Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

150
Vistas
¿Puede docker componer omitir compilación si la imagen está presente?

¿Es posible ejecutar docker-compose up de tal manera que solo se construya si la imagen no está presente en el repositorio?

Estoy trabajando en un escenario de prueba que se ejecutará en dos entornos diferentes: localmente en una computadora portátil y en un servidor como parte de la automatización de pruebas. Mi archivo docker-compose se parece a esto:

 services: my-service1: build: "./local-repo1" image: "image1" my-service2: build: "./local-repo2" image: "image2" ...

Si lo ejecuto localmente donde existen los directorios locales-repo, funciona bien. Si trato de ejecutarlo en el servidor donde, en cambio, lo extrae de un repositorio acoplable, se queja de que no puede encontrar la ruta de compilación. Si elimino la propiedad de build , funciona bien en el servidor, pero no se ejecutará localmente a menos que construya las imágenes de antemano.

¿Hay alguna manera de hacer que solo intente compilar si la imagen aún no existe? Si no, puedo probar algunas soluciones alternativas, pero preferiría usar solo un archivo docker-compose que maneje cada caso.

about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Puede usar docker-compose pull para obtener imágenes. Luego, si ya están presentes, Compose no intentará construirlos nuevamente.

Para estar realmente seguro de evitar reconstrucciones, puede usar --no-build .

 docker-compose pull docker-compose up -d --no-build

Su verdadero problema es que está especificando un contexto de compilación, pero luego intenta usar docker-compose sin que ese contexto de compilación esté presente.

Cuando se ejecuta docker-compose, incluso si no tiene un plan para hacer una compilación , verificará que al menos exista el contexto de compilación. Si no lo hace, fallará.

Todo lo que necesita hacer para satisfacer este requisito es crear un directorio vacío para cualquier contexto de compilación que falte. Eso debería hacer que docker-compose sea lo suficientemente feliz como para ejecutarse.

 mkdir -p local-repo1 local-repo2
about 4 years ago · Santiago Trujillo Denunciar

0

estoy usando docker-compose v2.1

cuando ejecutamos la ventana acoplable, compóngalo, verifique que la imagen exista o no. si no existe, solo construye esa imagen; de lo contrario, omitirá esa parte

docker-compose

 version: '2.1' services: devimage: image: nodedockertest build: . environment: NODE_ENV: development ports: - 8000:8000

ingrese la descripción de la imagen aquí

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda