Çalışan bir Azure kapsayıcı örneğinde komut yürütme

Azure Container Instances, çalışmakta olan bir kapsayıcıda komut yürütülmesini destekler. Zaten başlattığınız bir kapsayıcıda komut yürütmek, özellikle de uygulama geliştirme ve sorun giderme sırasında kullanışlıdır. Bu özelliğin en yaygın kullanım örneği, çalışan bir kapsayıcıdaki sorunlarla ilgili hata ayıklama gerçekleştirmek amacıyla etkileşimli bir kabuk başlatmaktır.

Azure CLI ile komut çalıştırma

Azure CLI'daaz container exec ile çalışan bir kapsayıcıda komut yürütür:

az container exec --resource-group <group-name> --name <container-group-name> --exec-command "<command>"

Örneğin, bir Nginx kapsayıcısında Bash kabuğu başlatmak için:

az container exec --resource-group myResourceGroup --name mynginx --exec-command "/bin/bash"

Aşağıdaki örnek çıktıda Bash kabuğu çalışan bir Linux kapsayıcısında başlatılır ve içinde yürütülen ls bir terminal sağlanır:

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.

Bu örnekte Komut İstemi, çalışan bir Nanoserver kapsayıcısında başlatılır:

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.

Birden çok kapsayıcılı gruplar

Kapsayıcı grubunuz bir uygulama kapsayıcısı ve günlük sepet gibi birden çok kapsayıcıya sahipse komutunun çalıştırıldığı kapsayıcının --container-nameadını belirtin.

Örneğin, mynginx kapsayıcı grubunda nginx-app ve günlükçü olarak iki kapsayıcı vardır. nginx-app kapsayıcısı üzerinde kabuk başlatmak için:

az container exec --resource-group myResourceGroup --name mynginx --container-name nginx-app --exec-command "/bin/bash"

Kısıtlamalar

Azure Container Instances şu anda az container exec ile tek bir işlem başlatmayı destekler ve komut bağımsız değişkenlerini geçiremezsiniz. Örneğin, içinde gibi sh -c "echo FOO && echo BAR"komutları zincirleyemez veya yürütemezsiniz echo FOO.

Sonraki adımlar

Azure Container Instances'de kapsayıcı ve dağıtım sorunlarını giderme makalesinde diğer sorun giderme araçları ve yaygın dağıtım sorunları hakkında bilgi edinin.