Compartir a través de


Docker@1 - Tarea de Docker v1

Compile, etiquete, inserte o ejecute imágenes de Docker o ejecute un comando de Docker. Use esta tarea con Docker o Azure Container Registry.

Nota:

Docker@2 es una versión más reciente de esta tarea que simplifica la tarea quitando las entradas que se pueden pasar como argumentos al comando.

Sintaxis

# Docker v1
# Build, tag, push, or run Docker images, or run a Docker command.
- task: Docker@1
  inputs:
  # Container Registry
    #containerregistrytype: 'Azure Container Registry' # 'Azure Container Registry' | 'Container Registry'. Required when command != logout. Container registry type. Default: Azure Container Registry.
    #dockerRegistryEndpoint: # string. Optional. Use when containerregistrytype = Container Registry && command != logout. Docker registry service connection. 
    #azureSubscriptionEndpoint: # string. Optional. Use when containerregistrytype = Azure Container Registry && command != logout. Azure subscription. 
    #azureContainerRegistry: # string. Optional. Use when containerregistrytype = Azure Container Registry && command != logout. Azure container registry. 
  # Commands
    #addBaseImageData: true # boolean. Add base image metadata to image(s). Default: true.
    command: 'Build an image' # 'Build an image' | 'Tag image' | 'Push an image' | 'Run an image' | 'login' | 'logout'. Required. Command. Default: Build an image.
    #dockerFile: '**/Dockerfile' # string. Required when command = Build an image || command = build. Dockerfile. Default: **/Dockerfile.
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
    #pushMultipleImages: false # boolean. Optional. Use when command = Push an image || command = push. Push multiple images. Default: false.
    #tagMultipleImages: false # boolean. Optional. Use when command = Tag image || command = tag. Tag multiple images. Default: false.
    #imageName: '$(Build.Repository.Name):$(Build.BuildId)' # string. Required when command = Build an image || command = build || command = Run an image || command = run || pushMultipleImages = false || tagMultipleImages = false. Image name. Default: $(Build.Repository.Name):$(Build.BuildId).
    #imageNamesPath: # string. Required when tagMultipleImages = true || pushMultipleImages = true. Image names path. 
    #qualifyImageName: true # boolean. Optional. Use when command = Build an image || command = build || command = Tag image || command = tag || command = Push an image || command = push || command = Run an image || command = run. Qualify image name. Default: true.
    #qualifySourceImageName: false # boolean. Optional. Use when command = Tag image || command = tag. Qualify source image name. Default: false.
    #includeSourceTags: false # boolean. Optional. Use when command = Build an image || command = build || command = Tag image || command = tag  || command = Push an image || command = push. Include source tags. Default: false.
    #includeLatestTag: false # boolean. Optional. Use when command = Build an image || command = build. Include latest tag. Default: false.
    #addDefaultLabels: true # boolean. Optional. Use when addDefaultLabels = false. Add default labels. Default: true.
    #useDefaultContext: true # boolean. Optional. Use when command = Build an image || command = build. Use default build context. Default: true.
    #buildContext: # string. Optional. Use when useDefaultContext = false. Build context. 
    #imageDigestFile: # string. Optional. Use when command = Push an image || command = push. Image digest file. 
    #containerName: # string. Optional. Use when command = Run an image || command = run. Container name. 
    #ports: # string. Optional. Use when command = Run an image || command = run. Ports. 
    #volumes: # string. Optional. Use when command = Run an image || command = run. Volumes. 
    #envVars: # string. Optional. Use when command = Run an image || command = run. Environment variables. 
    #workingDirectory: # string. Optional. Use when command = Run an image || command = run. Working directory. 
    #entrypointOverride: # string. Optional. Use when command = Run an image || command = run. Entry point override. 
    #containerCommand: # string. Optional. Use when command = Run an image || command = run. Container command. 
    #runInBackground: true # boolean. Optional. Use when command = Run an image || command = run. Run in background. Default: true.
    restartPolicy: 'no' # 'no' | 'onFailure' | 'always' | 'unlessStopped'. Required when runInBackground = true. Restart policy. Default: no.
    #maxRestartRetries: # string. Optional. Use when runInBackground = true && restartPolicy = onFailure. Maximum restart retries. 
  # Advanced Options
    #dockerHostEndpoint: # string. Optional. Use when command != login && command != logout. Docker host service connection. 
    #enforceDockerNamingConvention: true # boolean. Optional. Use when command != login && command != logout. Force image name to follow Docker naming convention. Default: true.
    #memoryLimit: # string. Optional. Use when command != login && command != logout. Memory limit.
# Docker v1
# Build, tag, push, or run Docker images, or run a Docker command.
- task: Docker@1
  inputs:
  # Container Registry
    #containerregistrytype: 'Azure Container Registry' # 'Azure Container Registry' | 'Container Registry'. Required when command != logout. Container registry type. Default: Azure Container Registry.
    #dockerRegistryEndpoint: # string. Optional. Use when containerregistrytype = Container Registry && command != logout. Docker registry service connection. 
    #azureSubscriptionEndpoint: # string. Optional. Use when containerregistrytype = Azure Container Registry && command != logout. Azure subscription. 
    #azureContainerRegistry: # string. Optional. Use when containerregistrytype = Azure Container Registry && command != logout. Azure container registry. 
  # Commands
    command: 'Build an image' # 'Build an image' | 'Tag image' | 'Push an image' | 'Run an image' | 'login' | 'logout'. Required. Command. Default: Build an image.
    #dockerFile: '**/Dockerfile' # string. Required when command = Build an image || command = build. Dockerfile. Default: **/Dockerfile.
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
    #pushMultipleImages: false # boolean. Optional. Use when command = Push an image || command = push. Push multiple images. Default: false.
    #tagMultipleImages: false # boolean. Optional. Use when command = Tag image || command = tag. Tag multiple images. Default: false.
    #imageName: '$(Build.Repository.Name):$(Build.BuildId)' # string. Required when command = Build an image || command = build || command = Run an image || command = run || pushMultipleImages = false || tagMultipleImages = false. Image name. Default: $(Build.Repository.Name):$(Build.BuildId).
    #imageNamesPath: # string. Required when tagMultipleImages = true || pushMultipleImages = true. Image names path. 
    #qualifyImageName: true # boolean. Optional. Use when command = Build an image || command = build || command = Tag image || command = tag || command = Push an image || command = push || command = Run an image || command = run. Qualify image name. Default: true.
    #qualifySourceImageName: false # boolean. Optional. Use when command = Tag image || command = tag. Qualify source image name. Default: false.
    #includeSourceTags: false # boolean. Optional. Use when command = Build an image || command = build || command = Tag image || command = tag  || command = Push an image || command = push. Include source tags. Default: false.
    #includeLatestTag: false # boolean. Optional. Use when command = Build an image || command = build. Include latest tag. Default: false.
    #addDefaultLabels: true # boolean. Optional. Use when addDefaultLabels = false. Add default labels. Default: true.
    #useDefaultContext: true # boolean. Optional. Use when command = Build an image || command = build. Use default build context. Default: true.
    #buildContext: # string. Optional. Use when useDefaultContext = false. Build context. 
    #imageDigestFile: # string. Optional. Use when command = Push an image || command = push. Image digest file. 
    #containerName: # string. Optional. Use when command = Run an image || command = run. Container name. 
    #ports: # string. Optional. Use when command = Run an image || command = run. Ports. 
    #volumes: # string. Optional. Use when command = Run an image || command = run. Volumes. 
    #envVars: # string. Optional. Use when command = Run an image || command = run. Environment variables. 
    #workingDirectory: # string. Optional. Use when command = Run an image || command = run. Working directory. 
    #entrypointOverride: # string. Optional. Use when command = Run an image || command = run. Entry point override. 
    #containerCommand: # string. Optional. Use when command = Run an image || command = run. Container command. 
    #runInBackground: true # boolean. Optional. Use when command = Run an image || command = run. Run in background. Default: true.
    restartPolicy: 'no' # 'no' | 'onFailure' | 'always' | 'unlessStopped'. Required when runInBackground = true. Restart policy. Default: no.
    #maxRestartRetries: # string. Optional. Use when runInBackground = true && restartPolicy = onFailure. Maximum restart retries. 
  # Advanced Options
    #dockerHostEndpoint: # string. Optional. Use when command != login && command != logout. Docker host service connection. 
    #enforceDockerNamingConvention: true # boolean. Optional. Use when command != login && command != logout. Force image name to follow Docker naming convention. Default: true.
    #memoryLimit: # string. Optional. Use when command != login && command != logout. Memory limit.

Entradas

tipo de registro de contenedor de containerregistrytype -
string. Obligatorio cuando command != logout. Valores permitidos: Azure Container Registry, Container Registry. Valor predeterminado: Azure Container Registry.

Especifica el Azure Container Registry que se va a conectar mediante una conexión de servicio de Azure. Seleccione un Azure Container Registry para conectarse a un Docker Hub o a cualquier otro registro de contenedor privado.


addBaseImageData - Agregar metadatos de imagen base a imágenes
boolean. Valor predeterminado: true.

El valor predeterminado agrega datos de imagen base, como el nombre de la imagen base y el resumen, para ayudar con la trazabilidad. Puede optar por no participar en este comportamiento predeterminado estableciendo este valor en false.


dockerRegistryEndpoint - conexión del servicio del registro de Docker
string. Opcional. Use cuando containerregistrytype = Container Registry && command != logout.

Especifica una conexión del servicio del registro de Docker. Obligatorio para los comandos que se autentican mediante un registro.


azureSubscriptionEndpoint - de suscripción de Azure
string. Opcional. Use cuando containerregistrytype = Azure Container Registry && command != logout.

Especifica una suscripción de Azure.


azureContainerRegistry - de Azure Container Registry
string. Opcional. Use cuando containerregistrytype = Azure Container Registry && command != logout.

Especifica una instancia de Azure Container Registry en la suscripción de Azure seleccionada. La imagen de contenedor se compila y se inserta en este registro de contenedor.


command - comando
string. Obligatorio. Valores permitidos: Build an image (build), Tag image (etiqueta), Push an image (push), Run an image (ejecución), login, logout. Valor predeterminado: Build an image.

Especifica el comando de Docker que se va a ejecutar.


dockerFile - dockerfile
string. Obligatorio cuando command = Build an image || command = build. Valor predeterminado: **/Dockerfile.

Especifica la ruta de acceso al archivo de Docker. La tarea utiliza el primer archivo de Docker que encuentra para compilar la imagen.


argumentos de
string. Opcional. Use cuando command != login && command != logout.

Especifica los argumentos adicionales que se van a pasar al cliente de Docker. El uso del valor buildAndPush en el parámetro de comando omite la propiedad arguments.


pushMultipleImages - Empuje de varias imágenes
boolean. Opcional. Use cuando command = Push an image || command = push. Valor predeterminado: false.

Especifica una lista en un archivo de texto de imágenes de Docker para insertar. Enumere el nombre de cada imagen en el formato Imagename1:tag1 en una línea separada. Al enumerar un nombre de imagen sin etiquetas, por ejemplo Imagename2, se insertan todas las etiquetas del Imagename2 contenedor.


tagMultipleImages - Etiquetar varias imágenes
boolean. Opcional. Use cuando command = Tag image || command = tag. Valor predeterminado: false.

Especifica una lista de varias etiquetas de imagen e imágenes de Docker para etiquetar en un archivo de texto. Enumere el nombre de cada imagen en el formato Imagename1:tag1 en una línea separada. Las imágenes enumeradas sin una etiqueta como Imagename2 se etiquetan como más recientes de forma predeterminada.


imageName - nombre de imagen
string. Obligatorio cuando command = Build an image || command = build || command = Run an image || command = run || pushMultipleImages = false || tagMultipleImages = false. Valor predeterminado: $(Build.Repository.Name):$(Build.BuildId).

Especifica el nombre de la imagen de Docker que se va a compilar, insertar o ejecutar.


imageNamesPath - Ruta de los nombres de las imágenes
string. Obligatorio cuando tagMultipleImages = true || pushMultipleImages = true.

Especifica la ruta de acceso a un archivo de texto que contiene los nombres de las imágenes de Docker que se van a etiquetar o insertar. Enumere cada nombre de imagen en una línea independiente.


qualifyImageName - Calificar el nombre de la imagen
boolean. Opcional. Use cuando command = Build an image || command = build || command = Tag image || command = tag || command = Push an image || command = push || command = Run an image || command = run. Valor predeterminado: true.

Especifica un nombre de imagen calificado con el nombre de host de la conexión del servicio del registro de Docker.


qualifySourceImageName - Calificar el nombre de la imagen de origen
boolean. Opcional. Use cuando command = Tag image || command = tag. Valor predeterminado: false.

Especifica un nombre de imagen calificado con el nombre de host de la conexión del servicio del registro de Docker.


includeSourceTags - Incluir etiquetas de origen
boolean. Opcional. Use cuando command = Build an image || command = build || command = Tag image || command = tag || command = Push an image || command = push. Valor predeterminado: false.

Especifica las etiquetas de Git que se van a incluir al compilar o insertar la imagen de Docker.


includeLatestTag - Incluir la etiqueta más reciente
boolean. Opcional. Use cuando command = Build an image || command = build. Valor predeterminado: false.

Especifica si se debe usar la etiqueta más reciente al compilar la imagen de Docker.


addDefaultLabels - Agregar etiquetas predeterminadas
boolean. Opcional. Use cuando addDefaultLabels = false. Valor predeterminado: true.

Especifica si se deben agregar metadatos de CI/CD a la imagen de contenedor mediante etiquetas de Docker, como información de repositorio, confirmación, compilación y versión.


useDefaultContext - Uso del contexto de compilación predeterminado
boolean. Opcional. Use cuando command = Build an image || command = build. Valor predeterminado: true.

Especifica cómo agregar o quitar el contexto de compilación al directorio que contiene el archivo de Docker.


de contexto de compilación de buildContext -
string. Opcional. Use cuando useDefaultContext = false.

Especifica la ruta de acceso al contexto de compilación.


imageDigestFile - Archivo de resumen de imagen
string. Opcional. Use cuando command = Push an image || command = push.

Especifica la ruta de acceso a un archivo que se crea y se rellena con el resumen completo del repositorio de imágenes de la imagen de Docker que se insertó.


nombre del contenedor
string. Opcional. Use cuando command = Run an image || command = run.

Especifica el nombre del contenedor de Docker que se va a ejecutar.


puertos de ports -
string. Opcional. Use cuando command = Run an image || command = run.

Especifica los puertos del contenedor de Docker que se van a publicar en el host. Enumere cada host-port:container-port enlace en una línea separada.


volúmenes de volumes -
string. Opcional. Use cuando command = Run an image || command = run.

Especifica los volúmenes que se van a montar desde el host. Enumere cada uno host-dir:container-dir en una línea separada.


variables de entorno de envVars -
string. Opcional. Use cuando command = Run an image || command = run.

Especifica variables de entorno para el contenedor de Docker. Enumere cada name=value par en una línea separada.


de directorio de trabajo de workingDirectory -
string. Opcional. Use cuando command = Run an image || command = run.

Especifica el directorio de trabajo para el contenedor de Docker.


entrypointOverride - Anulación del punto de entrada
string. Opcional. Use cuando command = Run an image || command = run.

Especifica si se debe invalidar el punto de entrada predeterminado para el contenedor de Docker.


containerCommand - Comando de contenedor
string. Opcional. Use cuando command = Run an image || command = run.

Especifica un comando de ejecución de Docker. El comando docker run crea primero una capa de contenedor que se puede escribir sobre la imagen especificada y, a continuación, la inicia mediante el comando run especificado. Por ejemplo, si la imagen contiene una sencilla aplicación web de Python Flask, puede especificar python app.py para iniciar la aplicación web.


runInBackground - Ejecutar en segundo plano
boolean. Opcional. Use cuando command = Run an image || command = run. Valor predeterminado: true.

Especifica si se va a ejecutar el contenedor de Docker en segundo plano.


restartPolicy - Política de reinicio
string. Obligatorio cuando runInBackground = true. Valores permitidos: no, onFailure (en caso de error), always, unlessStopped (a menos que se detenga). Valor predeterminado: no.

Especifica cuándo se debe ejecutar una directiva de reinicio.


maxRestartRetries - Número máximo de reintentos de reinicio
string. Opcional. Use cuando runInBackground = true && restartPolicy = onFailure.

Especifica el número máximo de reintentos de reinicio que intenta el demonio de Docker.


dockerHostEndpoint - Conexión del servicio de host de Docker
string. Opcional. Use cuando command != login && command != logout.

Especifica una conexión de servicio host de Docker. El valor predeterminado es el host del agente.


enforceDockerNamingConvention - Forzar el nombre de la imagen para seguir la convención de nomenclatura de Docker
boolean. Opcional. Use cuando command != login && command != logout. Valor predeterminado: true.

El valor predeterminado modifica el nombre de la imagen de Docker de acuerdo con las convenciones de nomenclatura de Docker. Por ejemplo, convierta caracteres mayúsculas en minúsculas y quite espacios.


límite de memoria de memoryLimit -
string. Opcional. Use cuando command != login && command != logout.

Especifica la cantidad máxima de memoria disponible para el contenedor como un número entero con sufijos opcionales como 2GB.


Opciones de control de tareas

Todas las tareas tienen opciones de control además de sus entradas de tarea. Para obtener más información, consulte Opciones de control y propiedades de tareas comunes.

Variables de salida

Esta tarea define las siguientes variables de salida , que puede consumir en pasos, trabajos y fases de bajada.

DockerOutput
Almacena la salida del comando docker.

DockerOutputPath
La ruta de acceso del archivo que contiene la salida del comando de compilación.

Esta tarea define las siguientes variables de salida , que puede consumir en pasos, trabajos y fases de bajada.

DockerOutput
Almacena la salida del comando docker.

Observaciones

Docker@2 es una versión más reciente de esta tarea que simplifica la tarea quitando las entradas que se pueden pasar como argumentos al comando.

Requisitos

Requisito Descripción
Tipos de canalización YAML, compilación clásica, versión clásica
Se ejecuta en Agente, DeploymentGroup
demandas Ninguno
Capacidades Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
restricciones de comandos Cualquiera
variables settable Cualquiera
Versión del agente Todas las versiones de agente admitidas.
Categoría de tarea Construir

Consulte también