<p>With the Kubernetes orchestrator <a href="https://blog.docker.com/2018/07/kubernetes-is-now-available-in-docker-desktop-stable-channel/" rel="nofollow noreferrer">now available</a> in the stable version of Docker Desktop for Win/Mac, I've been playing around with running an existing compose stack on Kubernetes locally.</p>

<p>This works fine, e.g., <code>docker stack deploy -c .\docker-compose.yml myapp.</code></p>

<p>Now I want to go to the next step of running this same application in a production environment using the likes of Amazon EKS or Azure AKS. These services expect proper Kubernetes YAML files. </p>

<p>My question(s) is what's the best way to get these files, or more specifically:</p>

<ol>
<li>Presumably, docker stack is performing some conversion from Compose YAML to Kubernetes YAML 'under the hood'. Is there documentation/source code links as to what is going on here and can that converted YAML be exported?</li>
<li>Or should I just be using Kompose?</li>
<li>It seems that running the above <code>docker stack deploy</code> command against a remote context (e.g., AKS/EKS) is not possible and that one must do a <code>kubectl deploy</code>. Can anyone confirm?</li>
</ol>

<p><code>docker stack deploy</code> with a Compose file to Kube only works on Docker's Kubernetes distributions - Docker Desktop and Docker Enterprise. </p>

<p>With the recent federation announcement you'll be able to manage AKS and EKS with Docker Enterprise, but using them direct means you'll have to use Kubernetes manifest files and <code>kubectl</code>.</p>
