Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Többtárolós Docker-alkalmazások létrehozása, leküldése vagy futtatása. Használja ezt a feladatot a Dockerrel vagy az Azure Container Registryvel.
Fontos
A DockerCompose@0 feladat elavult. A feladat docker-compose v1-et használ, amely 2023 júliusa óta nem kap frissítést. A docker compose v2 használatához használja a DockerCompose@1 feladatot. További információ: DockerCompose@0 a Docker Compose v2-t használja 1-s verziós kompatibilitási módban.
Többtárolós Docker-alkalmazások létrehozása, leküldése vagy futtatása. Használja ezt a feladatot a Dockerrel vagy az Azure Container Registryvel.
Szinopszis
# Docker Compose v0
# Build, push or run multi-container Docker applications. Task can be used with Docker or Azure Container registry.
- task: DockerCompose@0
inputs:
containerregistrytype: 'Azure Container Registry' # 'Azure Container Registry' | 'Container Registry'. Required. Container Registry Type. Default: Azure Container Registry.
#dockerRegistryEndpoint: # string. Optional. Use when containerregistrytype = Container Registry. Docker Registry Service Connection.
#azureSubscription: # string. Alias: azureSubscriptionEndpoint. Optional. Use when containerregistrytype = Azure Container Registry. Azure subscription.
#azureContainerRegistry: # string. Optional. Use when containerregistrytype = Azure Container Registry. Azure Container Registry.
dockerComposeFile: '**/docker-compose.yml' # string. Required. Docker Compose File. Default: **/docker-compose.yml.
#additionalDockerComposeFiles: # string. Additional Docker Compose Files.
#dockerComposeFileArgs: # string. Environment Variables.
#projectName: '$(Build.Repository.Name)' # string. Project Name. Default: $(Build.Repository.Name).
#qualifyImageNames: true # boolean. Qualify Image Names. Default: true.
action: 'Run a Docker Compose command' # 'Build services' | 'Push services' | 'Run services' | 'Run a specific service' | 'Lock services' | 'Write service image digests' | 'Combine configuration' | 'Run a Docker Compose command'. Required. Action. Default: Run a Docker Compose command.
#additionalImageTags: # string. Optional. Use when action = Build services || action = Push services. Additional Image Tags.
#includeSourceTags: false # boolean. Optional. Use when action = Build services || action = Push services. Include Source Tags. Default: false.
#includeLatestTag: false # boolean. Optional. Use when action = Build services || action = Push services. Include Latest Tag. Default: false.
#buildImages: true # boolean. Optional. Use when action = Run services. Build Images. Default: true.
#serviceName: # string. Required when action = Run a specific service. Service Name.
#containerName: # string. Optional. Use when action = Run a specific service. Container Name.
#ports: # string. Optional. Use when action = Run a specific service. Ports.
#workingDirectory: # string. Alias: workDir. Optional. Use when action = Run a specific service. Working Directory.
#entrypoint: # string. Optional. Use when action = Run a specific service. Entry Point Override.
#containerCommand: # string. Optional. Use when action = Run a specific service. Command.
#detached: true # boolean. Optional. Use when action = Run services || action = Run a specific service. Run in Background. Default: true.
#abortOnContainerExit: true # boolean. Optional. Use when action = Run services && detached == false. Abort on Container Exit. Default: true.
#imageDigestComposeFile: '$(Build.StagingDirectory)/docker-compose.images.yml' # string. Required when action = Write service image digests. Image Digest Compose File. Default: $(Build.StagingDirectory)/docker-compose.images.yml.
#removeBuildOptions: false # boolean. Optional. Use when action = Lock services || action = Combine configuration. Remove Build Options. Default: false.
#baseResolveDirectory: # string. Optional. Use when action = Lock services || action = Combine configuration. Base Resolve Directory.
#outputDockerComposeFile: '$(Build.StagingDirectory)/docker-compose.yml' # string. Required when action = Lock services || action = Combine configuration. Output Docker Compose File. Default: $(Build.StagingDirectory)/docker-compose.yml.
#dockerComposeCommand: # string. Required when action = Run a Docker Compose command. Command.
#arguments: # string. Optional. Use when action != Lock services && action != Combine configuration && action != Write service image digests. Arguments.
# Advanced Options
#dockerHostEndpoint: # string. Docker Host Service Connection.
#nopIfNoDockerComposeFile: false # boolean. No-op if no Docker Compose File. Default: false.
#requireAdditionalDockerComposeFiles: false # boolean. Require Additional Docker Compose Files. Default: false.
#currentWorkingDirectory: '$(System.DefaultWorkingDirectory)' # string. Alias: cwd. Working Directory. Default: $(System.DefaultWorkingDirectory).
#dockerComposePath: # string. Docker Compose executable Path.
Bemenetek
containerregistrytype
-
tárolóregisztrációs adatbázis típusa
string. Szükséges. Engedélyezett értékek: Azure Container Registry, Container Registry. Alapértelmezett érték: Azure Container Registry.
Egy Azure Container Registry-típust ad meg, ha ACR-t használ. Adjon meg egy tárolóregisztrációs adatbázistípust, ha bármilyen más tárolóregisztrációs adatbázist használ.
dockerRegistryEndpoint
-
Docker-beállításjegyzék-szolgáltatás kapcsolati
string. Opcionális. Használja a containerregistrytype = Container Registry.
Docker-beállításjegyzék-szolgáltatáskapcsolatot ad meg. Akkor szükséges, ha a parancsokat egy beállításjegyzék használatával kell hitelesíteni.
Azure-előfizetés azureSubscription -
Bemeneti alias: azureSubscriptionEndpoint.
string. Opcionális. Használja a containerregistrytype = Azure Container Registry.
Egy Azure-előfizetést határoz meg. Az Azure-szolgáltatáskapcsolat neve. A kapcsolat manuális beállításához tekintse meg Azure Resource Manager szolgáltatáskapcsolati.
azureContainerRegistry
-
Azure Container Registry-
string. Opcionális. Használja a containerregistrytype = Azure Container Registry.
Egy Azure Container Registryt ad meg.
dockerComposeFile
-
Docker Compose-fájl
string. Szükséges. Alapértelmezett érték: **/docker-compose.yml.
Megadja az elsődleges Docker Compose-fájl elérési útját.
additionalDockerComposeFiles
-
További Docker Compose-fájlok
string.
További Docker Compose-fájlokat ad meg, amelyek az elsődleges Docker Compose fájllal vannak kombinálva. A relatív elérési utak az elsődleges Docker Compose-fájlt tartalmazó könyvtárhoz képest feloldódnak. Ha egy megadott fájl nem található, a rendszer figyelmen kívül hagyja. Adja meg az egyes fájlelérési utakat egy új sorban.
dockerComposeFileArgs
-
környezeti változók
string.
Megadja a beállított környezeti változókat.
Formátum az alábbiak szerint:
- Listázd az egyes
name=valuepárokat egy új sorban. - Az új vonalak megőrzéséhez használja a YAML
|operátorát.
projectName
-
projektnév
string. Alapértelmezett érték: $(Build.Repository.Name).
Megadja a képek és tárolók elnevezéséhez alapértelmezés szerint használni kívánt projektnevet.
qualifyImageNames
-
Jogosult képnevek
boolean. Alapértelmezett érték: true.
Alapértelmezés szerint megadja a Docker beállításjegyzék-szolgáltatás kapcsolatának állomásnevét.
action
-
művelet
string. Szükséges. Engedélyezett értékek: Build services (Szolgáltatásrendszerképek létrehozása), Push services (Leküldéses szolgáltatás lemezképek), Run services (Szolgáltatásrendszerképek futtatása), Run a specific service (Adott szolgáltatásrendszerkép futtatása), Lock services (Szolgáltatásrendszerképek zárolása), Write service image digests, Combine configuration, Run a Docker Compose command. Alapértelmezett érték: Run a Docker Compose command.
Egy Docker Compose-műveletet határoz meg az engedélyezett értékek listájából.
additionalImageTags
-
További képcímkék
string. Opcionális. Használja a action = Build services || action = Push services.
További címkéket ad meg a létrehozott vagy leküldéses Docker-rendszerképekhez. Több címkét is megadhat, amely elválasztja az egyes címkéket egy sorcsatorna \n.
includeSourceTags
-
Forráscímkék belefoglalása
boolean. Opcionális. Használja a action = Build services || action = Push services. Alapértelmezett érték: false.
Git-címkéket ad meg Docker-képek készítésekor vagy leküldésekor.
includeLatestTag
-
Legújabb címke belefoglalása
boolean. Opcionális. Használja a action = Build services || action = Push services. Alapértelmezett érték: false.
A Docker-rendszerképek készítésekor vagy leküldésekor a legújabb címkét adja meg.
buildImages
-
Képek készítése
boolean. Opcionális. Használja a action = Run services. Alapértelmezett érték: true.
A szolgáltatástárolók indítása előtt megadja a buildképeket.
serviceName
-
szolgáltatásnév
string.
action = Run a specific serviceesetén kötelező.
Megadja a futtatni kívánt szolgáltatás nevét.
containerName
-
tárolónév
string. Opcionális. Használja a action = Run a specific service.
Megadja a használni kívánt szolgáltatástároló nevét.
ports
-
portok
string. Opcionális. Használja a action = Run a specific service.
A szolgáltatástároló azon portjait adja meg, amelyeket közzé szeretne tenni a gazdagépen. Adjon hozzá minden host-port:container-port kötést egy új sorhoz.
workingDirectory
-
Munkakönyvtár
Bemeneti alias: workDir.
string. Opcionális. Használja a action = Run a specific service.
Megadja a szolgáltatástároló munkakönyvtárát.
entrypoint
-
belépési pont felülbírálása
string. Opcionális. Használja a action = Run a specific service.
A szolgáltatástároló alapértelmezett belépési pontjának felülbírálási értékét adja meg.
containerCommand
-
parancs
string. Opcionális. Használja a action = Run a specific service.
Megadja a szolgáltatástárolóban futtatandó parancsot. Ha például a rendszerkép egy egyszerű Python Flask-webalkalmazást tartalmaz, megadhat python app.py a webalkalmazás elindításához.
detached
-
Futtatás a háttérben
boolean. Opcionális. Használja a action = Run services || action = Run a specific service. Alapértelmezett érték: true.
Megadja a háttérben futtatandó szolgáltatástárolókat.
abortOnContainerExit
-
megszakítás a tárolókijárati
boolean. Opcionális. Használja a action = Run services && detached == false. Alapértelmezett érték: true.
Megadja az összes tárolót, amelyeknek le kell állniuk, amikor bármelyik tároló kilép.
imageDigestComposeFile
-
Képemelő fájl
string.
action = Write service image digestsesetén kötelező. Alapértelmezett érték: $(Build.StagingDirectory)/docker-compose.images.yml.
Megadja egy Docker Compose-fájl elérési útját, amely az egyes szolgáltatások Docker-lemezképeinek teljes rendszerképtár-kivonatával jön létre és töltődik fel.
removeBuildOptions
-
Buildbeállítások eltávolítása
boolean. Opcionális. Használja a action = Lock services || action = Combine configuration. Alapértelmezett érték: false.
Megadja, hogy el kell-e távolítani a buildelési beállításokat a kimeneti Docker Compose-fájlból.
baseResolveDirectory
-
alapszintű feloldókönyvtár-
string. Opcionális. Használja a action = Lock services || action = Combine configuration.
Megadja azt az alapkönyvtárat, amelyből a kimeneti Docker Compose-fájl relatív elérési útjait fel kell oldani.
outputDockerComposeFile
-
Output Docker Compose fájl
string.
action = Lock services || action = Combine configurationesetén kötelező. Alapértelmezett érték: $(Build.StagingDirectory)/docker-compose.yml.
Megadja egy kimeneti Docker Compose-fájl elérési útját.
dockerComposeCommand
-
parancs
string.
action = Run a Docker Compose commandesetén kötelező.
Megadja az argumentumokkal végrehajtandó Docker Compose parancsot. Például rm --all az összes leállított szolgáltatástároló eltávolításához.
arguments
-
argumentumok
string. Opcionális. Használja a action != Lock services && action != Combine configuration && action != Write service image digests.
Megadja a Docker Compose parancsbeállításait.
Példa: A buildelési parancshoz --pull --compress --parallel.
dockerHostEndpoint
-
Docker-gazdaszolgáltatás kapcsolati
string.
Docker-gazdagép-szolgáltatáskapcsolatot ad meg. Az ügynök gazdagépének alapértelmezett értéke.
nopIfNoDockerComposeFile
-
Nincs művelet, ha nincs Docker Compose-fájl
boolean. Alapértelmezett érték: false.
Olyan értéket ad meg, amely kihagyja a feladatot, ha a Docker Compose fájl nem létezik. Ez a lehetőség akkor hasznos, ha a feladat választható viselkedést kínál az adattárban található Docker Compose-fájl meglétén alapulva.
requireAdditionalDockerComposeFiles
-
További Docker Compose-fájlok megkövetelése
boolean. Alapértelmezett érték: false.
Olyan értéket ad meg, amely hibát eredményez, ha a további Docker Compose-fájlok nem léteznek. Ez a beállítás felülírja azt az alapértelmezett viselkedést, amely figyelmen kívül hagy egy fájlt, ha az nem létezik.
currentWorkingDirectory
-
Munkakönyvtár
Bemeneti alias: cwd.
string. Alapértelmezett érték: $(System.DefaultWorkingDirectory).
Megadja a Docker Compose parancs munkakönyvtárát.
dockerComposePath
-
Docker Compose végrehajtható elérési útja
string.
Megadja a docker-compose végrehajtható fájl használatát meghatározó elérési utat.
Feladatvezérlési lehetőségek
Minden feladathoz tartoznak vezérlési lehetőségek is a feladat bemenetei mellett. További információ: Vezérlők és gyakori feladattulajdonságok.
Kimeneti változók
Ez a feladat a következő kimeneti változókat határozza meg, amelyeket az alsóbb rétegbeli lépésekben, feladatokban és szakaszokban használhat fel.
DockerComposeOutput
A parancs kimenetét tartalmazó fájlok elérési útja. Ez több (új karakterekkel elválasztott) fájl elérési útját is tartalmazhatja, például a DockerComposeRun parancsot (egyet a futtatáshoz, egyet pedig lefelé), a dockerPush parancsot (egyet minden leküldéses rendszerképhez), a dockerBuildet (magát a buildet és az összes címkeparancsot) és a dockerDigest parancsot (egyet minden lehúzott képhez). A többi parancs csak egy fájlt ad ki.
Megjegyzések
Fontos
A DockerCompose@0 feladat elavult. A feladat docker-compose v1-et használ, amely 2023 júliusa óta nem kap frissítést. A docker compose v2 használatához használja a DockerCompose@1 feladatot. További információ: DockerCompose@0 a Docker Compose v2-t használja 1-s verziós kompatibilitási módban.
Ezzel a feladatokkal többtárolós Docker-alkalmazásokat hozhat létre, küldhet le vagy futtathat. Használja ezt a feladatot egy Docker-beállításjegyzékkel vagy egy Azure Container Registry-beállításjegyzékkel.
Példák
- Azure Container Registry
- Egyéb tárolóregisztrációs adatbázisok
- Szolgáltatásrendszerképek létrehozása
- szolgáltatásképek leküldése
- Szolgáltatásrendszerképek futtatása
- Adott szolgáltatásrendszerkép futtatása
- Szolgáltatásrendszerképek zárolása
- Szolgáltatásrendszerképek írása
- Konfigurációs egyesítése
- Docker Compose-parancs futtatása
Azure Konténer Nyilvántartás
Ez a YAML-példa az Azure Container Registry bemeneteit adja meg:
variables:
azureContainerRegistry: Contoso.azurecr.io
azureSubscriptionEndpoint: Contoso
steps:
- task: DockerCompose@0
displayName: Container registry login
inputs:
containerregistrytype: Azure Container Registry
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureContainerRegistry: $(azureContainerRegistry)
Egyéb tárolóregisztrációs adatbázisok
A tárolóregisztrációs típus értékre van szükség az ACR-t nem tartalmazó tárolóregisztrációs adatbázis használatakor. Ebben az esetben használja a containerregistrytype: Container Registry.
Ez a YAML-példa egy olyan tárolóregisztrációs adatbázist határoz meg, amely nem az ACR, ahol Contoso a tárolóregisztrációs adatbázis Docker-beállításjegyzék-szolgáltatáskapcsolatának neve:
- task: DockerCompose@0
displayName: Container registry login
inputs:
containerregistrytype: Container Registry
dockerRegistryEndpoint: Contoso
Szolgáltatásrendszerképek létrehozása
Ez a YAML-példa létrehozza azt a lemezképet, amelyben a rendszerkép neve az Azure Container Registryhez kapcsolódó bemenetek alapján van minősítve:
- task: DockerCompose@0
displayName: Build services
inputs:
action: Build services
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureContainerRegistry: $(azureContainerRegistry)
dockerComposeFile: docker-compose.yml
projectName: $(Build.Repository.Name)
qualifyImageNames: true
additionalImageTags: $(Build.BuildId)
dockerComposeFileArgs: |
firstArg=$(firstArg)
secondArg=$(secondArg)
Leküldéses szolgáltatás lemezképe
Ez a YAML-példa egy lemezképet küld egy tárolóregisztrációs adatbázisba:
- task: DockerCompose@0
displayName: Push services
inputs:
action: Push services
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureContainerRegistry: $(azureContainerRegistry)
dockerComposeFile: docker-compose.yml
projectName: $(Build.Repository.Name)
qualifyImageNames: true
additionalImageTags: $(Build.BuildId)
Szolgáltatásrendszerképek futtatása
Ez a YAML-példa a következő szolgáltatásokat futtatja:
- task: DockerCompose@0
displayName: Run services
inputs:
action: Run services
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureContainerRegistry: $(azureContainerRegistry)
dockerComposeFile: docker-compose.ci.build.yml
projectName: $(Build.Repository.Name)
qualifyImageNames: true
buildImages: true
abortOnContainerExit: true
detached: true
Adott szolgáltatás lemezképének futtatása
Ez a YAML-példa egy adott szolgáltatást futtat:
- task: DockerCompose@0
displayName: Run a specific service
inputs:
action: Run a specific service
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureContainerRegistry: $(azureContainerRegistry)
dockerComposeFile: docker-compose.yml
projectName: $(Build.Repository.Name)
qualifyImageNames: true
serviceName: myhealth.web
ports: 80:80
detached: true
Szolgáltatásrendszerképek zárolása
Ez a YAML-példa zárolja a szolgáltatásokat:
- task: DockerCompose@0
displayName: Lock services
inputs:
action: Lock services
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureContainerRegistry: $(azureContainerRegistry)
dockerComposeFile: docker-compose.yml
projectName: $(Build.Repository.Name)
qualifyImageNames: true
outputDockerComposeFile: $(Build.StagingDirectory)/docker-compose.yml
Szolgáltatásrendszerkép-kivonatok írása
Ez a YAML-példa szolgáltatásrendszerkép-kivonatokat ír:
- task: DockerCompose@0
displayName: Write service image digests
inputs:
action: Write service image digests
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureContainerRegistry: $(azureContainerRegistry)
dockerComposeFile: docker-compose.yml
projectName: $(Build.Repository.Name)
qualifyImageNames: true
imageDigestComposeFile: $(Build.StagingDirectory)/docker-compose.images.yml
Konfiguráció egyesítése
Ez a YAML-példa a konfigurációkat egyesíti:
- task: DockerCompose@0
displayName: Combine configuration
inputs:
action: Combine configuration
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureContainerRegistry: $(azureContainerRegistry)
dockerComposeFile: docker-compose.yml
additionalDockerComposeFiles: docker-compose.override.yml
projectName: $(Build.Repository.Name)
qualifyImageNames: true
outputDockerComposeFile: $(Build.StagingDirectory)/docker-compose.yml
Docker Compose-parancs futtatása
Ez a YAML-példa egy Docker Compose-parancsot futtat:
- task: DockerCompose@0
displayName: Run a Docker Compose command
inputs:
action: Run a Docker Compose command
azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
azureContainerRegistry: $(azureContainerRegistry)
dockerComposeFile: docker-compose.yml
projectName: $(Build.Repository.Name)
qualifyImageNames: true
dockerComposeCommand: rm
Követelmények
| Követelmény | Leírás |
|---|---|
| Folyamattípusok | YAML, klasszikus build, klasszikus kiadás |
| Futtatás bekapcsolva | Ügynök, DeploymentGroup |
| Követelmények | Egyik sem |
| képességek | Ez a tevékenység nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek. |
| parancskorlátozások | Bármely |
| Változók beállítása | Bármely |
| Ügynök verziója | Minden támogatott ügynökverzió. |
| Tevékenységkategória | Épít |