Udostępnij za pośrednictwem


Docker@1 — zadanie platformy Docker w wersji 1

Kompilowanie, tagowanie, wypychanie lub uruchamianie obrazów platformy Docker albo uruchamianie polecenia platformy Docker. Użyj tego zadania z platformą Docker lub usługą Azure Container Registry.

Uwaga

Docker@2 jest nowszą wersją tego zadania, która upraszcza zadanie przez usunięcie danych wejściowych, które można przekazać jako argumenty do polecenia.

Składnia

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

Dane wejściowe

containerregistrytype - typ rejestru kontenerów
string. Wymagane, gdy command != logout. Dozwolone wartości: Azure Container Registry, Container Registry. Wartość domyślna: Azure Container Registry.

Określa usługę Azure Container Registry, aby nawiązać połączenie przy użyciu połączenia z usługą platformy Azure. Wybierz usługę Azure Container Registry, aby nawiązać połączenie z usługą Docker Hub lub innym prywatnym rejestrem kontenerów.


addBaseImageData - Dodawanie metadanych obrazu podstawowego do obrazów
boolean. Wartość domyślna: true.

Wartość domyślna dodaje dane obrazu podstawowego, takie jak nazwa obrazu podstawowego i skrót, aby ułatwić śledzenie. Możesz zrezygnować z tego domyślnego zachowania, ustawiając tę wartość na false.


dockerRegistryEndpoint - połączenia usługi rejestru platformy Docker
string. Opcjonalny. Użyj polecenia , gdy containerregistrytype = Container Registry && command != logout.

Określa połączenie usługi rejestru platformy Docker. Wymagane w przypadku poleceń uwierzytelniających się przy użyciu rejestru.


subskrypcji platformy Azure
string. Opcjonalny. Użyj polecenia , gdy containerregistrytype = Azure Container Registry && command != logout.

Określa subskrypcję platformy Azure.


azureContainerRegistry - usługi Azure Container Registry
string. Opcjonalny. Użyj polecenia , gdy containerregistrytype = Azure Container Registry && command != logout.

Określa usługę Azure Container Registry w wybranej subskrypcji platformy Azure. Obraz kontenera jest kompilowany i wypychany do tego rejestru kontenerów.


command - polecenia
string. To jest wymagane. Dozwolone wartości: Build an image (kompilacja), Tag image (tag), Push an image (wypychanie), Run an image (uruchamianie), login, logout. Wartość domyślna: Build an image.

Określa polecenie platformy Docker do uruchomienia.


dockerFile - Dockerfile
string. Wymagane, gdy command = Build an image || command = build. Wartość domyślna: **/Dockerfile.

Określa ścieżkę do pliku platformy Docker. Zadanie używa pierwszego znalezionego pliku platformy Docker do skompilowania obrazu.


arguments - argumenty
string. Opcjonalny. Użyj polecenia , gdy command != login && command != logout.

Określa dodatkowe argumenty, które mają być przekazywane do klienta platformy Docker. Użycie wartości buildAndPush w parametrze polecenia ignoruje właściwość argumentów.


pushMultipleImages - wypychanie wielu obrazów
boolean. Opcjonalny. Użyj polecenia , gdy command = Push an image || command = push. Wartość domyślna: false.

Określa listę w pliku tekstowym obrazów platformy Docker do wypchnięcia. Wyświetl każdą nazwę obrazu w formacie Imagename1:tag1 w osobnym wierszu. Wyświetlanie nazwy obrazu bez tagów, na przykład Imagename2, wypycha wszystkie tagi w kontenerze Imagename2.


tagMultipleImages - Tagowanie wielu obrazów
boolean. Opcjonalny. Użyj polecenia , gdy command = Tag image || command = tag. Wartość domyślna: false.

Określa listę wielu tagów obrazów i obrazów platformy Docker do tagowania w pliku tekstowym. Wyświetl każdą nazwę obrazu w formacie Imagename1:tag1 w osobnym wierszu. Obrazy wyświetlane bez tagu jako Imagename2 są domyślnie oznaczone jako najnowsze.


imageName - Nazwa obrazu
string. Wymagane, gdy command = Build an image || command = build || command = Run an image || command = run || pushMultipleImages = false || tagMultipleImages = false. Wartość domyślna: $(Build.Repository.Name):$(Build.BuildId).

Określa nazwę obrazu platformy Docker do kompilowania, wypychania lub uruchamiania.


imageNamesPath - ścieżka nazw obrazów
string. Wymagane, gdy tagMultipleImages = true || pushMultipleImages = true.

Określa ścieżkę do pliku tekstowego zawierającego nazwy obrazów platformy Docker do tagowania lub wypychania. Wyświetl każdą nazwę obrazu w osobnym wierszu.


qualifyImageName - kwalifikowana nazwa obrazu
boolean. Opcjonalny. Użyj polecenia , gdy command = Build an image || command = build || command = Tag image || command = tag || command = Push an image || command = push || command = Run an image || command = run. Wartość domyślna: true.

Określa kwalifikowaną nazwę obrazu z nazwą hosta połączenia usługi rejestru platformy Docker.


qualifySourceImageName - Kwalifikowanie nazwy obrazu źródłowego
boolean. Opcjonalny. Użyj polecenia , gdy command = Tag image || command = tag. Wartość domyślna: false.

Określa kwalifikowaną nazwę obrazu z nazwą hosta połączenia usługi rejestru platformy Docker.


includeSourceTags - dołączanie tagów źródłowych
boolean. Opcjonalny. Użyj polecenia , gdy command = Build an image || command = build || command = Tag image || command = tag || command = Push an image || command = push. Wartość domyślna: false.

Określa tagi git do uwzględnienia podczas kompilowania lub wypychania obrazu platformy Docker.


includeLatestTag - dołączanie najnowszego tagu
boolean. Opcjonalny. Użyj polecenia , gdy command = Build an image || command = build. Wartość domyślna: false.

Określa, czy podczas kompilowania obrazu platformy Docker należy użyć tagu latest.


addDefaultLabels - Dodawanie etykiet domyślnych
boolean. Opcjonalny. Użyj polecenia , gdy addDefaultLabels = false. Wartość domyślna: true.

Określa, czy dodać metadane ciągłej integracji/ciągłego wdrażania do obrazu kontenera przy użyciu etykiet platformy Docker, takich jak repozytorium, zatwierdzenie, kompilacja i informacje o wydaniu.


useDefaultContext - Użyj domyślnego kontekstu kompilacji
boolean. Opcjonalny. Użyj polecenia , gdy command = Build an image || command = build. Wartość domyślna: true.

Określa dodawanie lub usuwanie kontekstu kompilacji do katalogu zawierającego plik platformy Docker.


buildContext - kontekst kompilacji
string. Opcjonalny. Użyj polecenia , gdy useDefaultContext = false.

Określa ścieżkę do kontekstu kompilacji.


pliku skrótu obrazu imageDigestFile -
string. Opcjonalny. Użyj polecenia , gdy command = Push an image || command = push.

Określa ścieżkę do pliku, który został utworzony i wypełniony pełnym repozytorium obrazów skrót obrazu platformy Docker, który został wypchnięty.


containerName - nazwa kontenera
string. Opcjonalny. Użyj polecenia , gdy command = Run an image || command = run.

Określa nazwę kontenera platformy Docker do uruchomienia.


portów ports -
string. Opcjonalny. Użyj polecenia , gdy command = Run an image || command = run.

Określa porty w kontenerze platformy Docker do publikowania na hoście. Wyświetl listę każdego powiązania host-port:container-port w osobnym wierszu.


volumes - woluminy
string. Opcjonalny. Użyj polecenia , gdy command = Run an image || command = run.

Określa woluminy do zainstalowania z hosta. Wyświetl listę każdej host-dir:container-dir w osobnym wierszu.


envVars - zmienne środowiskowe
string. Opcjonalny. Użyj polecenia , gdy command = Run an image || command = run.

Określa zmienne środowiskowe dla kontenera platformy Docker. Wyświetl listę każdej pary name=value w osobnym wierszu.


katalogu roboczego workingDirectory -
string. Opcjonalny. Użyj polecenia , gdy command = Run an image || command = run.

Określa katalog roboczy kontenera platformy Docker.


entrypointOverride - punkt wejścia zastępuje
string. Opcjonalny. Użyj polecenia , gdy command = Run an image || command = run.

Określa, czy zastąpić domyślny punkt wejścia dla kontenera platformy Docker.


polecenia kontenera containerCommand -
string. Opcjonalny. Użyj polecenia , gdy command = Run an image || command = run.

Określa polecenie uruchamiania platformy Docker. Polecenie docker run najpierw tworzy zapisywalną warstwę kontenera na określonym obrazie, a następnie uruchamia ją przy użyciu określonego polecenia uruchamiania. Jeśli na przykład obraz zawiera prostą aplikację internetową platformy Python Flask, możesz określić python app.py, aby uruchomić aplikację internetową.


runInBackground - Uruchom w tle
boolean. Opcjonalny. Użyj polecenia , gdy command = Run an image || command = run. Wartość domyślna: true.

Określa, czy uruchamiać kontener platformy Docker w tle.


zasad ponownego uruchamiania restartPolicy -
string. Wymagane, gdy runInBackground = true. Dozwolone wartości: no, onFailure (po awarii), always, unlessStopped (chyba że zatrzymano). Wartość domyślna: no.

Określa, kiedy należy uruchomić zasady ponownego uruchamiania.


maxRestartRetries - maksymalna liczba ponownych prób ponownego uruchomienia
string. Opcjonalny. Użyj polecenia , gdy runInBackground = true && restartPolicy = onFailure.

Określa maksymalną liczbę ponownych prób ponownego uruchomienia próby demona platformy Docker.


dockerHostEndpoint - połączenia usługi hosta platformy Docker
string. Opcjonalny. Użyj polecenia , gdy command != login && command != logout.

Określa połączenie usługi hosta platformy Docker. Domyślnie jest to host agenta.


enforceDockerNamingConvention - Wymuś nazwę obrazu zgodnie z konwencją nazewnictwa platformy Docker
boolean. Opcjonalny. Użyj polecenia , gdy command != login && command != logout. Wartość domyślna: true.

Wartość domyślna modyfikuje nazwę obrazu platformy Docker zgodnie z konwencjami nazewnictwa platformy Docker. Na przykład przekonwertuj wielkie litery na małe litery i usuń spacje.


memoryLimit - limit pamięci
string. Opcjonalny. Użyj polecenia , gdy command != login && command != logout.

Określa maksymalną ilość pamięci dostępnej dla kontenera jako liczbę całkowitą z opcjonalnymi sufiksami, takimi jak 2GB.


Opcje sterowania zadaniami

Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań podrzędnych. Aby uzyskać więcej informacji, zobacz opcje kontroli i typowe właściwości zadań.

Zmienne wyjściowe

To zadanie definiuje następujące zmienne wyjściowe , które można używać w krokach podrzędnych, zadaniach i etapach.

DockerOutput
Przechowuje dane wyjściowe polecenia platformy Docker

DockerOutputPath
ścieżka pliku zawierającego dane wyjściowe polecenia kompilacji.

To zadanie definiuje następujące zmienne wyjściowe , które można używać w krokach podrzędnych, zadaniach i etapach.

DockerOutput
Przechowuje dane wyjściowe polecenia platformy Docker

Uwagi

Docker@2 jest nowszą wersją tego zadania, która upraszcza zadanie przez usunięcie danych wejściowych, które można przekazać jako argumenty do polecenia.

Wymagania

Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Żaden
możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
ograniczenia poleceń Jakikolwiek
zmienne ustawiane Jakikolwiek
Wersja agenta Wszystkie obsługiwane wersje agentów.
Kategoria zadań Zbuduj

Zobacz też