Cómo etiquetar la imagen de la ventana acoplable con docker-compose


119

Quiero crear una imagen a través de docker-compose y establecerle una etiqueta específica. La documentación dice:

Compose lo creará y etiquetará con un nombre generado, y usará esa imagen a partir de entonces.

Pero no puedo encontrar una manera de especificar la etiqueta y para las imágenes creadas siempre veo la etiqueta 'más reciente'.


1
github.com/docker/compose/issues/2092 es el soporte de seguimiento de problemas para crear la imagen con un nombre diferente
— dnephin

Respuestas:


182

Parece que los documentos / herramienta se han actualizado y ahora puede agregar la imageetiqueta a su secuencia de comandos. Esto fue un éxito para mí.

Ejemplo:

version: '2'
services:

  baggins.api.rest:
    image: my.image.name:rc2
    build:
      context: ../..
      dockerfile: app/Docker/Dockerfile.release
    ports:
      ...

https://docs.docker.com/compose/compose-file/#build


7
De hecho, dice "Si especificas la imagen además de la compilación, entonces Redactar nombra la imagen compilada con la aplicación web y la etiqueta opcional especificadas en la imagen"
— Daniel Andrei Mincă

10
¡Qué interfaz tan extraña! La presencia de un campo invierte la semántica de otro campo que está en el mismo nivel de sangría.
— Navin

@ numbers1311407 Es posible que desee editar / eliminar su comentario, ya que el comentario al que está respondiendo ha desaparecido. Parece que no está de acuerdo con ootwch o con la respuesta.
— Navin

4
Sí, encontré este concepto tan extraño. Esperaba una tagopción. Estaba rastreando los documentos en busca de etiquetas sin éxito
— Matthew Brent

1
@Navin Si esto no es lo suficientemente extraño, intente poner image: my.image.name:rc2en docker-compose.yml y build: .en docker-compose.override.yml y deje que docker-compose combine los dos. (Obtiene el mismo efecto que la respuesta aceptada)
— Craftonix - AA

23

Respuesta original 20 de noviembre de 2015 :

No hay opción para una etiqueta específica a partir de hoy. Docker compose simplemente hace su magia y asigna una etiqueta como la que está viendo. Siempre puede tener alguna llamada de script docker tag <image> <tag>después de llamar a docker-compose.

Ahora hay una opción como se describe arriba o aquí

build: ./dir
image: webapp:tag

6

Si especifica imagen además de compilación, entonces Compose nombra la imagen compilada con la aplicación web y la etiqueta opcional especificadas en la imagen:

build: ./dir
image: webapp:tag

Esto da como resultado una imagen nombrada webappy etiquetada tag, construida a partir de ./dir.

https://docs.docker.com/compose/compose-file/#build

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.