Есть ли способ автоматически «перебазировать» изображение в Docker? - PullRequest
0 голосов
/ 06 ноября 2019

У меня есть сценарий docker-compose, который вызывает службу

version : '2.0'
services:
        orig-db:
             image: web-url:{image_tag}
        custom-db:
             image: local_image: latest

Где изображение, используемое в настраиваемой БД, является результатом вызова контейнера с помощью orig-db, выполняя некоторые основные команды bash,и делает фиксацию докера. Я хочу, чтобы изображение custom-db всегда было исходным изображением + эти команды, даже если исходное изображение обновляется. Есть ли способ «перебазировать» исходное изображение?

1 Ответ

1 голос
/ 07 ноября 2019

Вы можете думать о Dockerfile как о простой форме «rebase».

# Content of subdir/Dockerfile
FROM orig_image:latest

RUN some.sh
RUN basic.sh
RUN bash_commands.sh

Когда вы создаете образ на основе этого файла, он всегда будет запускать команды bash поверх базыобраз. Внутри файла компоновки вы можете использовать свойство build, чтобы инструктировать docker-compose для создания образа вместо использования предварительно созданного образа.

version : '2.0'
services:
    orig-db:
         image: web-url:{image_tag}
    custom-db:
         build: somedir

Если базовое изображение изменяется, вам нужно сообщить Docker-создать заново образ custom-db, снова выполнив команды bash поверх обновленного исходного изображения.

docker-compose up -d --build custom-db
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...