Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

149
Visualizações
¿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 Respostas
Responde à pergunta

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 Relatório

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda