Извлечь из удаленного образа, если сборка не вызывается явно - PullRequest
0 голосов
/ 28 мая 2020

Есть ли способ указать как build:, так и image: в yaml-файле docker и заставить их хорошо воспроизводиться?

В идеале удаленное изображение вытягивается на docker-compose up , и создаются вместо этого при запуске docker-compose up --build или docker-compose build. Проблема немного мешает, когда разработчики должны закомментировать параметр сборки для получения удаленного образа.

Пример 1

build: ./nginx
image: us.gcr.io/cool-project-123456/dev-box:latest

Сборка всегда запуск, а затем присваивает имя и теги контейнеру значением image:.

Пример 2

# build: ./nginx
image: us.gcr.io/cool-project-123456/dev-box:latest

Здесь кажется, что, пока build: прокомментирован, а image: существует, все команды сборки игнорируются, и вместо этого извлекается изображение.

1 Ответ

1 голос
/ 28 мая 2020

Пример 1 выполняется не всегда. Он запускается только тогда, когда у вас нет этого изображения: us.gcr.io/cool-project-123456/dev-box:latest

docker-compose up всегда сначала использует существующие изображения на вашем компьютере.

Мое предложение сохраняет

build: ./nginx
image: us.gcr.io/cool-project-123456/dev-box:latest

и используя

  • docker-compose up --build
  • docker-compose pull & docker-compose up
...