Share via


az container

Note

This command group has commands that are defined in both Azure CLI and at least one extension. Install each extension to benefit from its extended capabilities. Learn more about extensions.

Manage Azure Container Instances.

Commands

Name Description Type Status
az container app

Commands to Manage Azure Container Instances App.

Extension Preview
az container app up

Deploy to Azure Container Instances using GitHub Actions.

Extension Preview
az container attach

Attach local standard output and error streams to a container in a container group. This command provides diagnostic information during container startup. Once the container has started, it streams STDOUT and STDERR to your local console.

Core GA
az container create

Create a container group.

Core GA
az container delete

Delete a container group.

Core GA
az container exec

Execute a command from within a running container of a container group.

Core GA
az container export

Export a container group in yaml format.

Core GA
az container list

List container groups.

Core GA
az container logs

Examine the logs for a container in a container group.

Core GA
az container restart

Restarts all containers in a container group.

Core GA
az container show

Get the details of a container group.

Core GA
az container start

Starts all containers in a container group.

Core GA
az container stop

Stops all containers in a container group.

Core GA

az container attach

Attach local standard output and error streams to a container in a container group. This command provides diagnostic information during container startup. Once the container has started, it streams STDOUT and STDERR to your local console.

az container attach [--container-name]
                    [--ids]
                    [--name]
                    [--resource-group]
                    [--subscription]

Examples

Attach local standard output and error streams to a container in a container group. (autogenerated)

az container attach --name MyContainerGroup --resource-group MyResourceGroup

Optional Parameters

--container-name

The container to attach to. If omitted, the first container in the container group will be chosen.

--ids

One or more resource IDs (space-delimited). It should be a complete resource ID containing all information of 'Resource Id' arguments. You should provide either --ids or other 'Resource Id' arguments.

--name -n

The name of the container group.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az container create

Create a container group.

az container create --resource-group
                    [--acr-identity]
                    [--add-capabilities]
                    [--allow-escalation]
                    [--assign-identity]
                    [--azure-file-volume-account-key]
                    [--azure-file-volume-account-name]
                    [--azure-file-volume-mount-path]
                    [--azure-file-volume-share-name]
                    [--cce-policy]
                    [--command-line]
                    [--cpu]
                    [--dns-name-label]
                    [--drop-capabilities]
                    [--environment-variables]
                    [--file]
                    [--gitrepo-dir]
                    [--gitrepo-mount-path]
                    [--gitrepo-revision]
                    [--gitrepo-url]
                    [--image]
                    [--ip-address {Private, Public}]
                    [--location]
                    [--log-analytics-workspace]
                    [--log-analytics-workspace-key]
                    [--memory]
                    [--name]
                    [--no-wait]
                    [--os-type {Linux, Windows}]
                    [--ports]
                    [--priority]
                    [--privileged]
                    [--protocol {TCP, UDP}]
                    [--registry-login-server]
                    [--registry-password]
                    [--registry-username]
                    [--restart-policy {Always, Never, OnFailure}]
                    [--role]
                    [--run-as-group]
                    [--run-as-user]
                    [--scope]
                    [--seccomp-profile]
                    [--secrets]
                    [--secrets-mount-path]
                    [--secure-environment-variables]
                    [--sku]
                    [--subnet]
                    [--subnet-address-prefix]
                    [--vnet]
                    [--vnet-address-prefix]
                    [--vnet-name]
                    [--zone]

Examples

Create a container in a container group with 1 core and 1Gb of memory.

az container create -g MyResourceGroup --name myapp --image myimage:latest --cpu 1 --memory 1

Create a container in a container group that runs Windows, with 2 cores and 3.5Gb of memory.

az container create -g MyResourceGroup --name mywinapp --image winappimage:latest --os-type Windows --cpu 2 --memory 3.5

Create a container in a container group with public IP address, ports and DNS name label.

az container create -g MyResourceGroup --name myapp --image myimage:latest --ports 80 443 --dns-name-label contoso

Create a container in a container group that invokes a script upon start.

az container create -g MyResourceGroup --name myapp --image myimage:latest --command-line "/bin/sh -c '/path to/myscript.sh'"

Create a container in a container group that runs a command and stop the container afterwards.

az container create -g MyResourceGroup --name myapp --image myimage:latest --command-line "echo hello" --restart-policy Never

Create a container in a container group with environment variables.

az container create -g MyResourceGroup --name myapp --image myimage:latest --environment-variables key1=value1 key2=value2

Create a container in a container group using container image from Azure Container Registry.

az container create -g MyResourceGroup --name myapp --image myAcrRegistry.azurecr.io/myimage:latest --registry-password password

Create a container in a container group that mounts an Azure File share as volume.

az container create -g MyResourceGroup --name myapp --image myimage:latest --command-line "cat /mnt/azfile/myfile" --azure-file-volume-share-name myshare --azure-file-volume-account-name mystorageaccount --azure-file-volume-account-key mystoragekey --azure-file-volume-mount-path /mnt/azfile

Create a container in a container group that mounts a git repo as volume.

az container create -g MyResourceGroup --name myapp --image myimage:latest --command-line "cat /mnt/gitrepo" --gitrepo-url https://github.com/user/myrepo.git --gitrepo-dir ./dir1 --gitrepo-mount-path /mnt/gitrepo

Create a container in a container group using a yaml file.

az container create -g MyResourceGroup -f containerGroup.yaml

Create a container group using Log Analytics from a workspace name.

az container create -g MyResourceGroup --name myapp --log-analytics-workspace myworkspace

Create a container group with a system assigned identity.

az container create -g MyResourceGroup --name myapp --image myimage:latest --assign-identity

Create a container group with a system assigned identity. The group will have a 'Contributor' role with access to a storage account.

az container create -g MyResourceGroup --name myapp --image myimage:latest --assign-identity --scope /subscriptions/99999999-1bf0-4dda-aec3-cb9272f09590/MyResourceGroup/myRG/providers/Microsoft.Storage/storageAccounts/storage1

Create a container group with a user assigned identity.

az container create -g MyResourceGroup --name myapp --image myimage:latest --assign-identity  /subscriptions/mySubscriptionId/resourcegroups/myRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myID

Create a container group with both system and user assigned identity.

az container create -g MyResourceGroup --name myapp --image myimage:latest --assign-identity [system] /subscriptions/mySubscriptionId/resourcegroups/myRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myID

Required Parameters

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

Optional Parameters

--acr-identity

The identity with access to the container registry.

--add-capabilities

A List of security context capabilities to be added.

--allow-escalation

Allow whether a process can gain more privileges than its parent process.

Default value: False
--assign-identity

Space-separated list of assigned identities. Assigned identities are either user assigned identities (resource IDs) and / or the system assigned identity ('[system]'). See examples for more info.

--azure-file-volume-account-key

The storage account access key used to access the Azure File share.

--azure-file-volume-account-name

The name of the storage account that contains the Azure File share.

--azure-file-volume-mount-path

The path within the container where the azure file volume should be mounted. Must not contain colon ':'.

--azure-file-volume-share-name

The name of the Azure File share to be mounted as a volume.

--cce-policy

The CCE policy for the confidential container group.

--command-line

The command line to run when the container is started, e.g. '/bin/bash -c myscript.sh'.

--cpu

The required number of CPU cores of the containers, accurate to one decimal place.

Default value: 1
--dns-name-label

The dns name label for container group with public IP.

--drop-capabilities

A List of security context capabilities to be dropped.

--environment-variables -e

A list of environment variable for the container. Space-separated values in 'key=value' format.

--file -f

The path to the input file.

--gitrepo-dir

The target directory path in the git repository. Must not contain '..'.

Default value: .
--gitrepo-mount-path

The path within the container where the git repo volume should be mounted. Must not contain colon ':'.

--gitrepo-revision

The commit hash for the specified revision.

--gitrepo-url

The URL of a git repository to be mounted as a volume.

--image

The container image name.

--ip-address

The IP address type of the container group.

Accepted values: Private, Public
--location -l

Location. Values from: az account list-locations. You can configure the default location using az configure --defaults location=<location>.

--log-analytics-workspace

The Log Analytics workspace name or id. Use the current subscription or use --subscription flag to set the desired subscription.

--log-analytics-workspace-key

The Log Analytics workspace key.

--memory

The required memory of the containers in GB, accurate to one decimal place.

Default value: 1.5
--name -n

The name of the container group.

--no-wait

Do not wait for the long-running operation to finish.

Default value: False
--os-type

The OS type of the containers.

Accepted values: Linux, Windows
Default value: Linux
--ports

A list of ports to open. Space-separated list of ports.

Default value: [80]
--priority

The priority of the container group.

--privileged

The flag to determine if the container permissions is elevated to Privileged.

Default value: False
--protocol

The network protocol to use.

Accepted values: TCP, UDP
--registry-login-server

The container image registry login server.

--registry-password

The password to log in container image registry server.

--registry-username

The username to log in container image registry server.

--restart-policy

Restart policy for all containers within the container group.

Accepted values: Always, Never, OnFailure
Default value: Always
--role

Role name or id the system assigned identity will have.

Default value: Contributor
--run-as-group

Set the User UID for the container.

--run-as-user

Set the User GID for the container.

--scope

Scope that the system assigned identity can access.

--seccomp-profile

A base64 encoded string containing the contents of the JSON in the seccomp profile.

--secrets

Space-separated secrets in 'key=value' format.

--secrets-mount-path

The path within the container where the secrets volume should be mounted. Must not contain colon ':'.

--secure-environment-variables

A list of secure environment variable for the container. Space-separated values in 'key=value' format.

--sku

The SKU of the container group.

--subnet

The name of the subnet when creating a new VNET or referencing an existing one. Can also reference an existing subnet by ID.

--subnet-address-prefix

The subnet IP address prefix to use when creating a new VNET in CIDR format.

Default value: 10.0.0.0/24
--vnet

The name of the VNET when creating a new one or referencing an existing one. Can also reference an existing vnet by ID. This allows using vnets from other resource groups.

--vnet-address-prefix

The IP address prefix to use when creating a new VNET in CIDR format.

Default value: 10.0.0.0/16
--vnet-name
Deprecated

Argument 'vnet_name' has been deprecated and will be removed in a future release. Use '--vnet' instead.

The name of the VNET when creating a new one or referencing an existing one.

--zone

The zone to place the container group.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az container delete

Delete a container group.

az container delete [--ids]
                    [--name]
                    [--resource-group]
                    [--subscription]
                    [--yes]

Examples

Delete a container group. (autogenerated)

az container delete --name MyContainerGroup --resource-group MyResourceGroup

Optional Parameters

--ids

One or more resource IDs (space-delimited). It should be a complete resource ID containing all information of 'Resource Id' arguments. You should provide either --ids or other 'Resource Id' arguments.

--name -n

The name of the container group.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--yes -y

Do not prompt for confirmation.

Default value: False
Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az container exec

Execute a command from within a running container of a container group.

The most common use case is to open an interactive bash shell. See examples below.

az container exec --exec-command
                  [--container-name]
                  [--ids]
                  [--name]
                  [--resource-group]
                  [--subscription]

Examples

Stream a shell from within an nginx container.

az container exec -g MyResourceGroup --name mynginx --container-name nginx --exec-command "/bin/bash"

Required Parameters

--exec-command

The command to run from within the container.

Optional Parameters

--container-name

The container name where to execute the command. Can be ommitted for container groups with only one container.

--ids

One or more resource IDs (space-delimited). It should be a complete resource ID containing all information of 'Resource Id' arguments. You should provide either --ids or other 'Resource Id' arguments.

--name -n

The name of the container group.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az container export

Export a container group in yaml format.

az container export --file
                    [--ids]
                    [--name]
                    [--resource-group]
                    [--subscription]

Examples

Export a container group in yaml.

az container export -g MyResourceGroup --name mynginx -f output.yaml

Required Parameters

--file -f

The file path to export the container group.

Optional Parameters

--ids

One or more resource IDs (space-delimited). It should be a complete resource ID containing all information of 'Resource Id' arguments. You should provide either --ids or other 'Resource Id' arguments.

--name -n

The name of the container group.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az container list

List container groups.

az container list [--resource-group]

Optional Parameters

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az container logs

Examine the logs for a container in a container group.

az container logs [--container-name]
                  [--follow]
                  [--ids]
                  [--name]
                  [--resource-group]
                  [--subscription]

Examples

Examine the logs for a container in a container group. (autogenerated)

az container logs --name MyContainerGroup --resource-group MyResourceGroup

Optional Parameters

--container-name

The container name to tail the logs. If omitted, the first container in the container group will be chosen.

--follow

Indicate to stream the tailing logs.

Default value: False
--ids

One or more resource IDs (space-delimited). It should be a complete resource ID containing all information of 'Resource Id' arguments. You should provide either --ids or other 'Resource Id' arguments.

--name -n

The name of the container group.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az container restart

Restarts all containers in a container group.

Restarts all containers in a container group in place. If container image has updates, new image will be downloaded.

az container restart --name
                     --resource-group
                     [--no-wait]

Required Parameters

--name -n

The name of the container group.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

Optional Parameters

--no-wait

Do not wait for the long-running operation to finish.

Default value: False
Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az container show

Get the details of a container group.

az container show [--ids]
                  [--name]
                  [--resource-group]
                  [--subscription]

Examples

Get the details of a container group. (autogenerated)

az container show --name MyContainerGroup --resource-group MyResourceGroup

Optional Parameters

--ids

One or more resource IDs (space-delimited). It should be a complete resource ID containing all information of 'Resource Id' arguments. You should provide either --ids or other 'Resource Id' arguments.

--name -n

The name of the container group.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az container start

Starts all containers in a container group.

Starts all containers in a container group. Compute resources will be allocated and billing will start.

az container start --name
                   --resource-group
                   [--no-wait]

Required Parameters

--name -n

The name of the container group.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

Optional Parameters

--no-wait

Do not wait for the long-running operation to finish.

Default value: False
Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az container stop

Stops all containers in a container group.

Stops all containers in a container group. Compute resources will be deallocated and billing will stop.

az container stop --name
                  --resource-group

Required Parameters

--name -n

The name of the container group.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.