Microsoft Azure CLI 'container' Command Module
==============================================================
Commands to manage Azure container instances
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
::
Group
az container: Manage Azure Container Instances.
Commands:
attach: Attach local standard output and error streams to a container in a container group.
create: Create a container group.
delete: Delete a container group.
list : List container groups.
logs : Tail the log of a container group.
show : Show the details of a container group.
Commands to create an Azure container group
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
::
Command
az container create: Create a container group.
Arguments
--image [Required]: The container image name.
--name -n [Required]: The name of the container group.
--resource-group -g [Required]: Name of resource group. You can configure the default group
using `az configure --defaults group=<name>`.
--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. Default:
1.
--dns-name-label : The dns name label for container group with public IP.
--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.
--image : The container image name.
--ip-address : The IP address type of the container group. Allowed values:
Public.
--location -l : Location. You can configure the default location using `az
configure --defaults location=<location>`.
--memory : The required memory of the containers in GB. Default: 1.5.
--name -n : The name of the container group.
--no-wait : Do not wait for the long-running operation to finish.
--os-type : The OS type of the containers. Allowed values: Linux,
Windows. Default: Linux.
--ports : The ports to open. Default: [80].
--protocol : The network protocol to use. Allowed values: TCP, UDP.
--restart-policy : Restart policy for all containers within the container group.
Allowed values: Always, Never, OnFailure. Default: Always.
--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.
Image Registry Arguments
--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.
Log Analytics Arguments
--log-analytics-workspace : The Log Analytics workspace name or id. Use the --subscription
flag to set the subscription if not current.
--log-analytics-workspace-key : The Log Analytics workspace key.
Global Arguments
--debug : Increase logging verbosity to show all debug logs.
--help -h : Show this help message and exit.
--output -o : Output format. Allowed values: json, jsonc, table, tsv.
Default: json.
--query : JMESPath query string. See http://jmespath.org/ for more
information and examples.
--verbose : Increase logging verbosity. Use --debug for full debug logs.
Examples
Create a container group and specify resources required.
az container create -g MyResourceGroup --name MyAlpine --image alpine:latest --cpu 1
--memory 1
Create a container group with OS type.
az container create -g MyResourceGroup --name MyWinApp --image winappimage:latest --os-type
Windows
Create a container group with public IP address.
az container create -g MyResourceGroup --name MyAlpine --image alpine:latest --ip-address
public
Create a container in a container group with public IP address and UDP port.
az container create -g MyResourceGroup --name myapp --image myimage:latest --ip-address
public --ports 8081 --protocol UDP
Create a container group with starting command line.
az container create -g MyResourceGroup --name MyAlpine --image alpine:latest --command-line
"/bin/sh -c '/path to/myscript.sh'"
Create a container group with envrionment variables.
az contanier create -g MyResourceGroup --name MyAlpine --image alpine:latest -e key1=value1
key2=value2
Create a container group using container image from Azure Container Registry.
az container create -g MyResourceGroup --name MyAlpine --image
myAcrRegistry.azurecr.io/alpine:latest --registry-password password
Create a container group using container image from other private container image registry.
az container create -g MyResourceGroup --name MyApp --image myimage:latest --cpu 1 --memory
1.5 --registry-login-server myregistry.com --registry-username username --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 using Log Analytics from a workspace id and key.
az container create -g MyResourceGroup --name myapp --log-analytics-workspace workspaceid
--log-analytics-workspace-key workspacekey
Commands to get an Azure container group
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
::
Command
az container show: Show the details of a container group.
Arguments
Resource Id Arguments
--ids : One or more resource IDs (space-delimited). If provided, no other 'Resource
Id' arguments should be specified.
--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 Arguments
--debug : Increase logging verbosity to show all debug logs.
--help -h : Show this help message and exit.
--output -o : Output format. Allowed values: json, jsonc, table, tsv. Default: json.
--query : JMESPath query string. See http://jmespath.org/ for more information and
examples.
--verbose : Increase logging verbosity. Use --debug for full debug logs.
Commands to tail the logs of a Azure container group
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
::
Command
az container logs: Tail the log of a container group.
Arguments
--container-name : The container name to tail the logs.
Resource Id Arguments
--ids : One or more resource IDs (space-delimited). If provided, no other 'Resource
Id' arguments should be specified.
--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 Arguments
--debug : Increase logging verbosity to show all debug logs.
--help -h : Show this help message and exit.
--output -o : Output format. Allowed values: json, jsonc, table, tsv. Default: json.
--query : JMESPath query string. See http://jmespath.org/ for more information and
examples.
--verbose : Increase logging verbosity. Use --debug for full debug logs.
Commands to delete an Azure container group
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
::
Command
az container delete: Delete a container group.
Arguments
--yes -y : Do not prompt for confirmation.
Resource Id Arguments
--ids : One or more resource IDs (space-delimited). If provided, no other 'Resource
Id' arguments should be specified.
--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 Arguments
--debug : Increase logging verbosity to show all debug logs.
--help -h : Show this help message and exit.
--output -o : Output format. Allowed values: json, jsonc, table, tsv. Default: json.
--query : JMESPath query string. See http://jmespath.org/ for more information and
examples.
--verbose : Increase logging verbosity. Use --debug for full debug logs.
Commands to list Azure container groups by resource group
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
::
Command
az container list: List container groups.
Arguments
--resource-group -g: Name of resource group. You can configure the default group using `az
configure --defaults group=<name>`.
Global Arguments
--debug : Increase logging verbosity to show all debug logs.
--help -h : Show this help message and exit.
--output -o : Output format. Allowed values: json, jsonc, table, tsv. Default: json.
--query : JMESPath query string. See http://jmespath.org/ for more information and
examples.
--verbose : Increase logging verbosity. Use --debug for full debug logs.
Commands to execute a command in a running container
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
::
Command
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. This
command is currently not supported for Windows machines.
Arguments
--exec-command [Required]: The command to run from within the container.
--container-name : The container name where to execute the command. Can be ommitted for
container groups with only one container.
--terminal-col-size : The col size for the command output. Default: 80.
--terminal-row-size : The row size for the command output. Default: 20.
Resource Id Arguments
--ids : One or more resource IDs (space-delimited). If provided, no other
'Resource Id' arguments should be specified.
--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 Arguments
--debug : Increase logging verbosity to show all debug logs.
--help -h : Show this help message and exit.
--output -o : Output format. Allowed values: json, jsonc, table, tsv. Default:
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.
Examples
Stream a shell from within an nginx container.
az container exec -g MyResourceGroup --name mynginx --container-name nginx --exec-command
"/bin/bash"
Commands to attach to a container in a container group
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
::
Command
az container attach: Attach local standard output and error streams to a container in a
container group.
Arguments
--container-name : The container to attach to. If omitted, the first container in the
container group will be chosen.
Resource Id Arguments
--ids : One or more resource IDs (space delimited). If provided, no other 'Resource
Id' arguments should be specified.
--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 Arguments
--debug : Increase logging verbosity to show all debug logs.
--help -h : Show this help message and exit.
--output -o : Output format. Allowed values: json, jsonc, table, tsv. Default: json.
--query : JMESPath query string. See http://jmespath.org/ for more information and
examples.
--verbose : Increase logging verbosity. Use --debug for full debug logs.
.. :changelog:
Release History
===============
0.3.18
++++++
* Minor fixes.
0.3.17
++++++
* Minor fixes.
0.3.16
++++++
* Minor fixes.
0.3.15
++++++
* `container start/restart`: Added `--no-wait` argument.
0.3.14
++++++
* Minor fixes.
0.3.13
++++++
* Adding 'az container start' command
* Allow using decimal values for CPU during container creation
0.3.12
++++++
* Updating dependencies
0.3.11
++++++
* Updating dependencies
0.3.10
++++++
* Minor fixes
0.3.9
+++++
* Minor fixes
0.3.8
+++++
* Show identity when exporting a container group to yaml
0.3.7
+++++
* Make 'Private' a valid type to pass to '--ip-address'
* Allow using only subnet ID to setup a virtual network for the container group
* Allow using vnet name or resource id to enable using vnets from different resource groups
0.3.6
+++++
* Add '--assign-identity' for adding a MSI identity to a container group
* Add '--scope' to create a role assignment for the system assigned MSI identity
* Show warning when creating a container group with an image without a long running process
* Fix table output issues for 'list' and 'show' commands
0.3.5
+++++
* Minor changes
0.3.4
+++++
* Added ability to restart and stop a running container group
* Add '--network-profile' for passing in a network profile
* Add '--subnet', '--vnet_name', to allow creating container groups in a VNET
* Update the table output to show the status of the container group
0.3.3
+++++
* Add '--secure-environment-variables' for passing secure environment variables to a container
0.3.2
+++++
* Do not require '--log-analytics-workspace-key' for name or ID when in set subscription
0.3.1
+++++
* Update PyYAML dependency to 3.13
0.3.0
+++++
* BREAKING CHANGE: 'show' commands log error message and fail with exit code of 3 upon a missing resource.
* Remove the requirement for username and password for non dockerhub registries
* Fix error when creating container groups from yaml file
0.2.1
+++++
* Update PyYAML dependency to 4.2b4
0.2.0
+++++
* Default to long running operation for `az container create`
* Add Log Analytics parameters '--log-analytics-workspace' and '--log-analytics-workspace-key'
* Add --protocol parameter to specify which network protocol to use
0.1.24
++++++
* Allow exporting a container group in yaml format.
* Allow using a yaml file to create / update a container group.
0.1.23
++++++
* Do not require --registry-server for `az container create` when a registry server is included in the image name.
0.1.22
++++++
* Add Git Repo volume mount parameters '--gitrepo-url' '--gitrepo-dir' '--gitrepo-revision' and '--gitrepo-mount-path'
0.1.21
++++++
* Fixed [#5926](https://github.com/Azure/azure-cli/issues/5926): Fix `az container exec` failing when --container-name specified
* `sdist` is now compatible with wheel 0.31.0
0.1.20
++++++
* Add 'az container exec' command that allows for exec commands in a container for a running container group.
* Allow table output for creating and updating a container group.
0.1.19
++++++
* Add '--secrets' and '--secrets-mount-path' options to 'az container create' for using secrets in ACI
0.1.18
++++++
* Add '--follow' option to 'az container logs' for streaming logs
* Add 'az container attach' command that attaches local standard output and error streams to a container in a container group.
0.1.17
++++++
* Minor fixes
0.1.16
++++++
* Update for CLI core changes.
0.1.15
++++++
* Fix incorrect order of parameters for container logs
0.1.14
++++++
* Fixed default ports regression
0.1.13
++++++
* minor fixes
* Added support to open multiple ports
* Added container group restart policy
* Added support to mount Azure File share as a volume
* Updated helper docs
0.1.12
++++++
* minor fixes
0.1.11 (2017-09-22)
+++++++++++++++++++
* minor fixes
0.1.10 (2017-09-11)
+++++++++++++++++++
* minor fixes
0.1.9 (2017-08-28)
++++++++++++++++++
* minor fixes
0.1.8 (2017-08-11)
++++++++++++++++++
* container create: Fixes issue where equals sign was not allowed inside an environment variable.
0.1.7 (2017-07-27)
++++++++++++++++++
* Preview release.