Executar um comando em uma instância de contêiner do Azure em execução
O Azure Container Instances suporta a execução de um comando num contentor em execução. A execução de um comando em um contêiner iniciado é especialmente útil durante o desenvolvimento e a solução de problemas do aplicativo. É comum esta funcionalidade ser utilizada para iniciar um shell interativo para que seja possível depurar problemas num contentor em execução.
Executar um comando com a CLI do Azure
Execute um comando em um contêiner em execução com az container exec na CLI do Azure:
az container exec --resource-group <group-name> --name <container-group-name> --exec-command "<command>"
Por exemplo, para iniciar um shell Bash em um contêiner Nginx:
az container exec --resource-group myResourceGroup --name mynginx --exec-command "/bin/bash"
No exemplo de saída a seguir, o shell Bash é iniciado em um contêiner Linux em execução, fornecendo um terminal no qual ls
é executado:
root@caas-83e6c883014b427f9b277a2bba3b7b5f-708716530-2qv47:/# ls
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr
root@caas-83e6c883014b427f9b277a2bba3b7b5f-708716530-2qv47:/# exit
exit
Bye.
Neste exemplo, o Prompt de Comando é iniciado em um contêiner Nanoserver em execução:
az container exec --resource-group myResourceGroup --name myiis --exec-command "cmd.exe"
Microsoft Windows [Version 10.0.14393]
(c) 2016 Microsoft Corporation. All rights reserved.
C:\>dir
Volume in drive C has no label.
Volume Serial Number is 76E0-C852
Directory of C:\
03/23/2018 09:13 PM <DIR> inetpub
11/20/2016 11:32 AM 1,894 License.txt
03/23/2018 09:13 PM <DIR> Program Files
07/16/2016 12:09 PM <DIR> Program Files (x86)
03/13/2018 08:50 PM 171,616 ServiceMonitor.exe
03/23/2018 09:13 PM <DIR> Users
03/23/2018 09:12 PM <DIR> var
03/23/2018 09:22 PM <DIR> Windows
2 File(s) 173,510 bytes
6 Dir(s) 21,171,609,600 bytes free
C:\>exit
Bye.
Grupos com vários contentores
Se o seu grupo de contêineres tiver vários contêineres, como um contêiner de aplicativo e um sidecar de log, especifique o nome do contêiner no qual executar o comando com --container-name
.
Por exemplo, no grupo de contêineres mynginx há dois contêineres, nginx-app e logger. Para iniciar um shell no contêiner nginx-app :
az container exec --resource-group myResourceGroup --name mynginx --container-name nginx-app --exec-command "/bin/bash"
Restrições
Atualmente, as Instâncias de Contêiner do Azure dão suporte à execução de um único processo com az container exec e você não pode passar argumentos de comando. Por exemplo, não é possível encadear comandos como no sh -c "echo FOO && echo BAR"
, ou executar echo FOO
.
Próximos passos
Saiba mais sobre outras ferramentas de solução de problemas e problemas comuns de implantação em Solucionar problemas de contêiner e implantação em Instâncias de Contêiner do Azure.