--- description: Setup & Prerequisites keywords: azure, microsoft, iaas, tutorial title: Docker for Azure Setup & Prerequisites redirect_from: - /engine/installation/azure/ --- {% include d4a_buttons.md %} ## Quickstart If your account has the [proper permissions](#prerequisites), you can generate the [Service Principal](#service-principal) and then choose from the stable or beta channel to bootstrap Docker for Azure using Azure Resource Manager. For more about stable and beta channels, see the [FAQs](/docker-for-azure/faqs.md#stable-and-beta-channels)
| Stable channel | Beta channel |
|---|---|
| The stable deployment is fully baked and tested, and comes with the latest GA version of Docker Engine. This is the best channel to use if you want a reliable platform to work with. These releases follow a version schedule with a longer lead time than the betas, synched with Docker Engine releases and hotfixes. |
The beta deployment offers cutting edge features and comes with the experimental version of Docker Engine, described in the Docker Experimental Features README on GitHub. This is the best channel to use if you want to experiment with features under development, and can weather some instability and bugs. This channel is a continuation of the beta program, where you can provide feedback as the apps evolve. Releases are typically more frequent than for stable, often one or more per month. We collect usage data on betas across the board. |
| {{azure_blue_latest}} | {{azure_blue_edge}} |
### SSH Key
Docker for Azure uses SSH for accessing the Docker swarm once it's deployed. During setup, you will be prompted for a SSH public key. If you don't have a SSH key, you can generate one with `puttygen` or `ssh-keygen`. You only need the public key component to set up Docker for Azure. Here's how to get the public key from a .pem file:
ssh-keygen -y -f my-key.pem
### Installing with the CLI
You can also invoke the Docker for Azure template from the Azure CLI:
Here is an example of how to use the CLI. Make sure you populate all of the parameters and their values:
```bash
$ azure group create --name DockerGroup --location centralus --deployment-name docker.template --template-file