airflow.contrib.operators.azure_container_instances_operator
¶
Module Contents¶
-
class
airflow.contrib.operators.azure_container_instances_operator.
AzureContainerInstancesOperator
(ci_conn_id, registry_conn_id, resource_group, name, image, region, environment_variables=None, volumes=None, memory_in_gb=None, cpu=None, command=None, remove_on_error=True, fail_if_exists=True, *args, **kwargs)[source]¶ Bases:
airflow.models.BaseOperator
Start a container on Azure Container Instances
- Parameters
ci_conn_id (str) – connection id of a service principal which will be used to start the container instance
registry_conn_id (str) – connection id of a user which can login to a private docker registry. If None, we assume a public registry
resource_group (str) – name of the resource group wherein this container instance should be started
name (str) – name of this container instance. Please note this name has to be unique in order to run containers in parallel.
image (str) – the docker image to be used
region (str) – the region wherein this container instance should be started
environment_variables (dict) – key,value pairs containing environment variables which will be passed to the running container
volumes (list[<conn_id, account_name, share_name, mount_path, read_only>]) – list of volumes to be mounted to the container. Currently only Azure Fileshares are supported.
memory_in_gb (double) – the amount of memory to allocate to this container
cpu (double) – the number of cpus to allocate to this container
command (str) – the command to run inside the container
- Example
>>> a = AzureContainerInstancesOperator( 'azure_service_principal', 'azure_registry_user', 'my-resource-group', 'my-container-name-{{ ds }}', 'myprivateregistry.azurecr.io/my_container:latest', 'westeurope', {'EXECUTION_DATE': '{{ ds }}'}, [('azure_wasb_conn_id', 'my_storage_container', 'my_fileshare', '/input-data', True),], memory_in_gb=14.0, cpu=4.0, command='python /app/myfile.py', task_id='start_container' )