Comentamos neste post que o Docker estaria ganhando uma integração nativa com a Azure! Com essa integração o deploy de uma imagem docker direto para o Azure Container Instances (ACI) seria tão fácil quando um único comando no Docker CLI.
A integração já estava presente no Docker Edge, que é a versão beta do Docker. Agora temos a excelente notícia de que esta integração chegou para todos os usuários do Docker! E, junto com ela, agora temos a mesma integração direto no VSCode!
E como podemos ter acesso a essa facilidade?
Habilitando a integração com VSCode
Primeiramente, precisamos ter o Docker instalado na máquina. Se você ainda não possui então vá até o site oficial e baixe a versão stable
para o seu sistema operacional.
Assim que você baixar e instalar o Docker, faça login na Azure utilizando o seguinte comando:
docker login azure
E depois crie um novo contexto usando o comando docker context create aci <nome>
, o nome do contexto fica por sua conta!
Agora, vá até o marketplace do VSCode, baixe e instale a extensão oficial do Docker para o Code. Ela deve aparecer no seu canto esquerdo da tela, conforme a imagem a seguir.
![](https://github.com/microsoft/vscode-docker/raw/master/resources/readme/overview.gif)
Perceba que, no final da barra lateral, teremos um menu chamado Contexts. Abra-o e clique com o botão direito sobre o contexto que você acabou de criar. Selecione Use:
![Selecione o contexto que vamos operar](https://raw.githubusercontent.com/khaosdoctor/blog-assets/master/images/2020/09/container-use.png)
Com o contexto selecionado, já temos tudo o que precisamos para fazer nosso deploy.
Fazendo um deploy para o ACI
Com a extensão, podemos fazer login em nosso DockerHub ou Azure Container Registry:
![Clique no botão de conexão para fazer o login](https://raw.githubusercontent.com/khaosdoctor/blog-assets/master/images/2020/09/docker-login.png)
A partir daí podemos selecionar o tipo de registro que estamos usando
![Selecione o serviço](https://raw.githubusercontent.com/khaosdoctor/blog-assets/master/images/2020/09/type-cr.png)
E então teremos a listagem das nossas imagens hospedadas nestes serviços:
![Veja as imagens](https://raw.githubusercontent.com/khaosdoctor/blog-assets/master/images/2020/09/docker-images.png)
Agora podemos abrir e selecionar uma das imagens, clicar com o botão direito, e selecionar "Deploy Image to Azure Container Instances":
![](https://raw.githubusercontent.com/khaosdoctor/blog-assets/master/images/2020/09/deploy.png)
Veja o processo como um todo:
![](https://azurecomcdn.azureedge.net/mediahandler/acomblog/media/Default/blog/9b424351-84c1-4f45-b23f-e34a18d24a9f.gif)
A partir daí você terá prompts para fazer o input do nome do seu ACI ou se quer usar um já existente, e também poderá trazer os logs, abrir portas e muito mais!
Conclusão
A integração nativa do Docker com o ACI é uma das ferramentas mais interessantes que temos quando estamos nos referindo à cloud. Essa capacidade de integração direta faz com que fique muito mais fácil realizar nossos deploys e também gerenciar nossos containers.
Se você quiser saber mais, veja a documentação oficial sobre a integração e também leia a documentação no site do Docker.
Até mais!