Freigeben über


jobs.job.container definition

Mit Containeraufträgen können Sie Aufträge in einem Container anstelle des Agenthosts ausführen.

Definitionen, die auf diese Definition verweisen: pipeline, jobs.job, jobs.deployment

Definitionen, die auf diese Definition verweisen: pipeline, jobs.job

Implementierungen

Implementierung Beschreibung
Container: Zeichenfolge Geben Sie den Auftragscontainer nach Alias an.
Container: Image Geben Sie den Auftragscontainer mithilfe des Imagetags und der Optionen an.

Container: Zeichenfolge

Geben Sie den Auftragscontainer nach Alias an.

container: string # Specify job container by alias.

container Schnur.

Geben Sie den Auftragscontainer nach Alias an.

Bemerkungen

Der Alias kann der Name eines Images oder ein Verweis auf eine Containerressource sein.

Beispiele

Im folgenden Beispiel wird das Ubuntu-Image 18.04 von Docker Hub abgerufen und dann der Container gestartet. Wenn der printenv Befehl ausgeführt wird, geschieht er im Container ubuntu:18.04.

pool:
  vmImage: 'ubuntu-18.04'

container: ubuntu:18.04

steps:
- script: printenv

Container: Image

Geben Sie den Auftragscontainer mithilfe des Imagetags und der Optionen an.

container:
  image: string # Required. Container image tag.
  endpoint: string # ID of the service endpoint connecting to a private container registry.
  env: # Variables to map into the container's environment.
    string: string # Name/value pairs
  mapDockerSocket: boolean # Set this flag to false to force the agent not to setup the /var/run/docker.sock volume on container jobs.
  options: string # Options to pass into container host.
  ports: [ string ] # Ports to expose on the container.
  volumes: [ string ] # Volumes to mount on the container.
  mountReadOnly: # Volumes to mount read-only, the default is all false.
    work: boolean # Mount the work directory as readonly.
    externals: boolean # Mount the externals directory as readonly.
    tools: boolean # Mount the tools directory as readonly.
    tasks: boolean # Mount the tasks directory as readonly.

Eigenschaften

image Schnur. Erforderlich.
Containerimagetag.

endpoint Schnur.
ID des Dienstendpunkts, der eine Verbindung mit einer privaten Containerregistrierung herstellt.

env Zeichenfolgenwörterbuch.
Variablen, die der Umgebung des Containers zugeordnet werden sollen.

mapDockerSocketBoolesch.
Legen Sie dieses Flag auf false fest, um zu erzwingen, dass der Agent das Volume /var/run/docker.sock nicht für Containeraufträge einrichten darf.

options Schnur.
Optionen zum Übergeben an den Containerhost.

ports Zeichenfolgenliste.
Ports, die für den Container verfügbar gemacht werden sollen.

volumes Zeichenfolgenliste.
Volumes, die im Container bereitgestellt werden sollen.

mountReadOnlymountReadOnly.
Volumes, die schreibgeschützt eingebunden werden sollen, ist der Standardwert false.

Container: Image

Geben Sie den Auftragscontainer mithilfe des Imagetags und der Optionen an.

container:
  image: string # Required. Container image tag.
  endpoint: string # ID of the service endpoint connecting to a private container registry.
  env: # Variables to map into the container's environment.
    string: string # Name/value pairs
  mapDockerSocket: boolean # Set this flag to false to force the agent not to setup the /var/run/docker.sock volume on container jobs.
  options: string # Options to pass into container host.
  ports: [ string ] # Ports to expose on the container.
  volumes: [ string ] # Volumes to mount on the container.

Eigenschaften

image Schnur. Erforderlich.
Containerimagetag.

endpoint Schnur.
ID des Dienstendpunkts, der eine Verbindung mit einer privaten Containerregistrierung herstellt.

env Zeichenfolgenwörterbuch.
Variablen, die der Umgebung des Containers zugeordnet werden sollen.

mapDockerSocketBoolesch.
Legen Sie dieses Flag auf false fest, um zu erzwingen, dass der Agent das Volume /var/run/docker.sock nicht für Containeraufträge einrichten darf.

options Schnur.
Optionen zum Übergeben an den Containerhost.

ports Zeichenfolgenliste.
Ports, die für den Container verfügbar gemacht werden sollen.

volumes Zeichenfolgenliste.
Volumes, die im Container bereitgestellt werden sollen.

Container: Image

Geben Sie den Auftragscontainer mithilfe des Imagetags und der Optionen an.

container:
  image: string # Required. Container image tag.
  endpoint: string # ID of the service endpoint connecting to a private container registry.
  env: # Variables to map into the container's environment.
    string: string # Name/value pairs
  options: string # Options to pass into container host.
  ports: [ string ] # Ports to expose on the container.
  volumes: [ string ] # Volumes to mount on the container.

Eigenschaften

image Schnur. Erforderlich.
Containerimagetag.

endpoint Schnur.
ID des Dienstendpunkts, der eine Verbindung mit einer privaten Containerregistrierung herstellt.

env Zeichenfolgenwörterbuch.
Variablen, die der Umgebung des Containers zugeordnet werden sollen.

options Schnur.
Optionen zum Übergeben an den Containerhost.

ports Zeichenfolgenliste.
Ports, die für den Container verfügbar gemacht werden sollen.

volumes Zeichenfolgenliste.
Volumes, die im Container bereitgestellt werden sollen.

Beispiele

Verwenden Sie options zum Konfigurieren des Containerstarts.

container:
  image: ubuntu:18.04
  options: --hostname container-test --ip 192.168.0.1

steps:
- script: echo hello

Im folgenden Beispiel werden die Container im Abschnitt „resources“ definiert. Auf jeden Container wird später verwiesen, indem auf den ihm zugewiesenen Alias verwiesen wird.

resources:
  containers:
  - container: u14
    image: ubuntu:14.04

  - container: u16
    image: ubuntu:16.04

  - container: u18
    image: ubuntu:18.04

jobs:
- job: RunInContainer
  pool:
    vmImage: 'ubuntu-18.04'

  strategy:
    matrix:
      ubuntu14:
        containerResource: u14
      ubuntu16:
        containerResource: u16
      ubuntu18:
        containerResource: u18

  container: $[ variables['containerResource'] ]

  steps:
  - script: printenv

Weitere Informationen