definición de jobs.job.container
Los trabajos de contenedor permiten ejecutar trabajos en un contenedor en lugar del host del agente.
Definiciones que hacen referencia a esta definición: canalización, jobs.job, jobs.deployment
Definiciones que hacen referencia a esta definición: canalización, jobs.job
Implementaciones
Implementación | Descripción |
---|---|
container: string | Especifique el contenedor de trabajos por alias. |
container: image | Especifique el contenedor de trabajos mediante la etiqueta de imagen y las opciones. |
container: string
Especifique el contenedor de trabajos por alias.
container: string # Specify job container by alias.
container
Cadena.
Especifique el contenedor de trabajos por alias.
Observaciones
El alias puede ser el nombre de una imagen o puede ser una referencia a un recurso de contenedor.
Ejemplos
En el ejemplo siguiente se captura la imagen de Ubuntu etiquetada 18.04 de Docker Hub y, a continuación, se inicia el contenedor. Cuando se ejecuta el printenv
comando, se produce dentro del contenedor ubuntu:18.04.
pool:
vmImage: 'ubuntu-18.04'
container: ubuntu:18.04
steps:
- script: printenv
container: image
Especifique el contenedor de trabajos mediante la etiqueta de imagen y las opciones.
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.
Propiedades
image
Cadena. Necesario.
Etiqueta de imagen de contenedor.
endpoint
Cadena.
Identificador del punto de conexión de servicio que se conecta a un registro de contenedor privado.
env
diccionario de cadenas.
Variables que se van a asignar al entorno del contenedor.
mapDockerSocket
booleano.
Establezca esta marca en false para forzar que el agente no configure el volumen /var/run/docker.sock en los trabajos de contenedor.
options
Cadena.
Opciones para pasar al host de contenedor.
ports
lista de cadenas.
Puertos que se exponen en el contenedor.
volumes
lista de cadenas.
Volúmenes que se van a montar en el contenedor.
mountReadOnly
mountReadOnly.
Los volúmenes para montar solo lectura, el valor predeterminado es false.
container: image
Especifique el contenedor de trabajos mediante la etiqueta de imagen y las opciones.
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.
Propiedades
image
Cadena. Necesario.
Etiqueta de imagen de contenedor.
endpoint
Cadena.
Identificador del punto de conexión de servicio que se conecta a un registro de contenedor privado.
env
diccionario de cadenas.
Variables que se van a asignar al entorno del contenedor.
mapDockerSocket
booleano.
Establezca esta marca en false para forzar que el agente no configure el volumen /var/run/docker.sock en los trabajos de contenedor.
options
Cadena.
Opciones para pasar al host de contenedor.
ports
lista de cadenas.
Puertos que se exponen en el contenedor.
volumes
lista de cadenas.
Volúmenes que se van a montar en el contenedor.
container: image
Especifique el contenedor de trabajos mediante la etiqueta de imagen y las opciones.
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.
Propiedades
image
Cadena. Necesario.
Etiqueta de imagen de contenedor.
endpoint
Cadena.
Identificador del punto de conexión de servicio que se conecta a un registro de contenedor privado.
env
diccionario de cadenas.
Variables que se van a asignar al entorno del contenedor.
options
Cadena.
Opciones para pasar al host de contenedor.
ports
lista de cadenas.
Puertos que se exponen en el contenedor.
volumes
lista de cadenas.
Volúmenes que se van a montar en el contenedor.
Ejemplos
Use options
para configurar el inicio del contenedor.
container:
image: ubuntu:18.04
options: --hostname container-test --ip 192.168.0.1
steps:
- script: echo hello
En el ejemplo siguiente, los contenedores se definen en la sección de recursos. Luego, se hace referencia a cada contenedor más adelante, con una referencia a su alias asignado.
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