Partager via


Docker@1 - Tâche Docker v1

Générez, balisez, envoyez ou exécutez des images Docker, ou exécutez une commande Docker. Utilisez cette tâche avec Docker ou Azure Container Registry.

Remarque

Docker@2 est une version plus récente de cette tâche qui simplifie la tâche en supprimant les entrées qui peuvent être passées en tant qu’arguments à la commande.

Syntaxe

# 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.

Entrées

containerregistrytype - type de Registre de conteneurs
string. Obligatoire lorsque command != logout. Valeurs autorisées : Azure Container Registry, Container Registry. Valeur par défaut : Azure Container Registry.

Spécifie Azure Container Registry pour se connecter à l’aide d’une connexion de service Azure. Sélectionnez un Registre de conteneurs Azure pour vous connecter à un Hub Docker ou à tout autre registre de conteneurs privé.


addBaseImageData - Ajouter des métadonnées d’image de base aux images
boolean. Valeur par défaut : true.

La valeur par défaut ajoute des données d’image de base, telles que le nom et la synthèse de l’image de base, pour faciliter la traçabilité. Vous pouvez désactiver ce comportement par défaut en définissant cette valeur sur false.


dockerRegistryEndpoint - connexion au service de Registre Docker
string. Optionnel. Utilisez quand containerregistrytype = Container Registry && command != logout.

Spécifie une connexion de service de Registre Docker. Obligatoire pour les commandes qui s’authentifient à l’aide d’un registre.


azureSubscriptionEndpoint - abonnement Azure
string. Optionnel. Utilisez quand containerregistrytype = Azure Container Registry && command != logout.

Spécifie un abonnement Azure.


azureContainerRegistry - Azure Container Registry
string. Optionnel. Utilisez quand containerregistrytype = Azure Container Registry && command != logout.

Spécifie un Registre de conteneurs Azure dans l’abonnement Azure sélectionné. L’image conteneur est générée et envoyée (push) à ce registre de conteneurs.


command - commande
string. Obligatoire. Valeurs autorisées : Build an image (build), Tag image (balise), Push an image (push), Run an image (exécuter), login, logout. Valeur par défaut : Build an image.

Spécifie la commande Docker à exécuter.


dockerFile - Dockerfile
string. Obligatoire lorsque command = Build an image || command = build. Valeur par défaut : **/Dockerfile.

Spécifie le chemin d’accès au fichier Docker. La tâche utilise le premier fichier Docker qu’il trouve pour générer l’image.


arguments - arguments
string. Optionnel. Utilisez quand command != login && command != logout.

Spécifie des arguments supplémentaires à passer au client Docker. L’utilisation de la valeur buildAndPush dans le paramètre de commande ignore la propriété arguments.


pushMultipleImages - envoyer plusieurs images
boolean. Optionnel. Utilisez quand command = Push an image || command = push. Valeur par défaut : false.

Spécifie une liste dans un fichier texte d’images Docker à envoyer (push). Répertoriez chaque nom d’image au format Imagename1:tag1 sur une ligne distincte. Répertorier un nom d’image sans étiquettes, par exemple Imagename2, envoie (push) toutes les balises dans le conteneur Imagename2.


tagMultipleImages - Baliser plusieurs images
boolean. Optionnel. Utilisez quand command = Tag image || command = tag. Valeur par défaut : false.

Spécifie une liste de plusieurs balises d’image et images Docker à baliser dans un fichier texte. Répertoriez chaque nom d’image au format Imagename1:tag1 sur une ligne distincte. Les images répertoriées sans balise comme Imagename2 sont marquées comme dernière par défaut.


imageName - nom de l’image
string. Obligatoire lorsque command = Build an image || command = build || command = Run an image || command = run || pushMultipleImages = false || tagMultipleImages = false. Valeur par défaut : $(Build.Repository.Name):$(Build.BuildId).

Spécifie le nom de l’image Docker à générer, envoyer (push) ou exécuter.


chemin d’accès des noms d’images imageNamesPath -
string. Obligatoire lorsque tagMultipleImages = true || pushMultipleImages = true.

Spécifie le chemin d’accès à un fichier texte qui contient les noms des images Docker à baliser ou envoyer (push). Répertoriez chaque nom d’image sur une ligne distincte.


qualifyImageName - qualifier le nom de l’image
boolean. Optionnel. Utilisez quand command = Build an image || command = build || command = Tag image || command = tag || command = Push an image || command = push || command = Run an image || command = run. Valeur par défaut : true.

Spécifie un nom d’image éligible avec le nom d’hôte de la connexion du service de Registre Docker.


qualifySourceImageName - qualifier le nom de l’image source
boolean. Optionnel. Utilisez quand command = Tag image || command = tag. Valeur par défaut : false.

Spécifie un nom d’image éligible avec le nom d’hôte de la connexion du service de Registre Docker.


includeSourceTags - Inclure des balises sources
boolean. Optionnel. Utilisez quand command = Build an image || command = build || command = Tag image || command = tag || command = Push an image || command = push. Valeur par défaut : false.

Spécifie les balises Git à inclure lors de la génération ou de l’envoi (push) de l’image Docker.


includeLatestTag - Inclure la dernière balise
boolean. Optionnel. Utilisez quand command = Build an image || command = build. Valeur par défaut : false.

Spécifie s’il faut utiliser la balise la plus récente lors de la génération de l’image Docker.


addDefaultLabels - Ajouter des étiquettes par défaut
boolean. Optionnel. Utilisez quand addDefaultLabels = false. Valeur par défaut : true.

Spécifie s’il faut ajouter des métadonnées CI/CD à l’image conteneur à l’aide d’étiquettes Docker, telles que le référentiel, la validation, les informations de génération et de mise en production.


useDefaultContext - Utiliser le contexte de build par défaut
boolean. Optionnel. Utilisez quand command = Build an image || command = build. Valeur par défaut : true.

Spécifie l’ajout ou la suppression du contexte de build dans le répertoire qui contient le fichier Docker.


buildContext - de contexte de génération
string. Optionnel. Utilisez quand useDefaultContext = false.

Spécifie le chemin d’accès au contexte de build.


imageDigestFile - fichier de synthèse d’images
string. Optionnel. Utilisez quand command = Push an image || command = push.

Spécifie le chemin d’accès à un fichier créé et rempli avec le résumé complet du référentiel d’images de l’image Docker envoyée( push).


containerName - nom du conteneur
string. Optionnel. Utilisez quand command = Run an image || command = run.

Spécifie le nom du conteneur Docker à exécuter.


ports ports -
string. Optionnel. Utilisez quand command = Run an image || command = run.

Spécifie les ports du conteneur Docker à publier sur l’hôte. Répertoriez chaque liaison host-port:container-port sur une ligne distincte.


volumes - volumes
string. Optionnel. Utilisez quand command = Run an image || command = run.

Spécifie les volumes à monter à partir de l’hôte. Répertoriez chaque host-dir:container-dir sur une ligne distincte.


envVars - variables d’environnement
string. Optionnel. Utilisez quand command = Run an image || command = run.

Spécifie des variables d’environnement pour le conteneur Docker. Répertoriez chaque paire name=value sur une ligne distincte.


workingDirectory - répertoire de travail
string. Optionnel. Utilisez quand command = Run an image || command = run.

Spécifie le répertoire de travail du conteneur Docker.


entrypointOverride - remplacement de point d’entrée
string. Optionnel. Utilisez quand command = Run an image || command = run.

Spécifie s’il faut remplacer le point d’entrée par défaut pour le conteneur Docker.


containerCommand - commande Conteneur
string. Optionnel. Utilisez quand command = Run an image || command = run.

Spécifie une commande Docker Run. La commande docker run crée d’abord une couche conteneur accessible en écriture sur l’image spécifiée, puis la démarre à l’aide de la commande d’exécution spécifiée. Par exemple, si l’image contient une application web Python Flask simple, vous pouvez spécifier python app.py pour lancer l’application web.


runInBackground - Exécuter en arrière-plan
boolean. Optionnel. Utilisez quand command = Run an image || command = run. Valeur par défaut : true.

Spécifie s’il faut exécuter le conteneur Docker en arrière-plan.


restartPolicy - de stratégie de redémarrage
string. Obligatoire lorsque runInBackground = true. Valeurs autorisées : no, onFailure (en cas d’échec), always, unlessStopped (sauf s’il est arrêté). Valeur par défaut : no.

Spécifie quand exécuter une stratégie de redémarrage.


maxRestartRetries - tentatives maximales de redémarrage
string. Optionnel. Utilisez quand runInBackground = true && restartPolicy = onFailure.

Spécifie le nombre maximal de nouvelles tentatives de redémarrage des tentatives de démon Docker.


dockerHostEndpoint - connexion de service hôte Docker
string. Optionnel. Utilisez quand command != login && command != logout.

Spécifie une connexion de service hôte Docker. La valeur par défaut est l’hôte de l’agent.


enforceDockerNamingConvention - Forcer le nom de l’image à suivre la convention d’affectation de noms Docker
boolean. Optionnel. Utilisez quand command != login && command != logout. Valeur par défaut : true.

La valeur par défaut modifie le nom de l’image Docker en fonction des conventions d’affectation de noms Docker. Par exemple, convertissez des caractères majuscules en minuscules et supprimez des espaces.


limite de mémoire memoryLimit -
string. Optionnel. Utilisez quand command != login && command != logout.

Spécifie la quantité maximale de mémoire disponible pour le conteneur en tant qu’entier avec des suffixes facultatifs comme 2GB.


Options de contrôle de la tâche

Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâches. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.

Variables de sortie

Cette tâche définit les variables de sortie suivantes, que vous pouvez utiliser en aval, les travaux et les étapes.

DockerOutput
Stocke la sortie de la commande Docker

DockerOutputPath
Chemin d’accès du fichier qui contient la sortie de la commande build.

Cette tâche définit les variables de sortie suivantes, que vous pouvez utiliser en aval, les travaux et les étapes.

DockerOutput
Stocke la sortie de la commande Docker

Remarques

Docker@2 est une version plus récente de cette tâche qui simplifie la tâche en supprimant les entrées qui peuvent être passées en tant qu’arguments à la commande.

Spécifications

Besoin Descriptif
Types de pipelines YAML, Build Classique, Version Classique
Exécutions sur Agent, DeploymentGroup
demandes Aucun
fonctionnalités de Cette tâche ne répond à aucune demande de tâches ultérieures dans le travail.
restrictions de commande N'importe quel
variables settables N'importe quel
Version de l’agent Toutes les versions de l’agent prises en charge.
Catégorie de tâche Construire

Voir aussi