Share via


Köra ett kommando i en Azure-containerinstans som körs

Azure Container Instances har stöd för att köra kommandon i aktiva containers. Under apputveckling och felsökning är det särskilt användbart att kunna köra kommandon i containers som redan har startats. Den här funktionen används oftast till att starta ett interaktivt gränssnitt så att du kan felsöka problem i en container som körs.

Köra ett kommando med Azure CLI

Kör ett kommando i en container som körs med az container exec i Azure CLI:

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

Om du till exempel vill starta ett Bash-gränssnitt i en Nginx-container:

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

I exempelutdata nedan startas Bash-gränssnittet i en Linux-container som körs och tillhandahåller en terminal där ls körs:

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.

I det här exemplet startas kommandotolken i en Nanoserver-container som körs:

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.

Grupper med flera container

Om din containergrupp har flera containrar, till exempel en programcontainer och en sidovagn för loggning, anger du namnet på containern där kommandot ska köras med --container-name.

I containergruppen mynginx finns till exempel två containrar, nginx-app och logger. Så här startar du ett gränssnitt i containern nginx-app :

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

Begränsningar

Azure Container Instances stöder för närvarande att starta en enda process med az container exec, och du kan inte skicka kommandoargument. Du kan till exempel inte länka kommandon som i sh -c "echo FOO && echo BAR", eller köra echo FOO.

Nästa steg

Läs mer om andra felsökningsverktyg och vanliga distributionsproblem i Felsöka container- och distributionsproblem i Azure Container Instances.