LINUX.ORG.RU

История изменений

Исправление manntes-live, (текущая версия) :

На этапе build контейнер не должен видеть другие контейнеры?

Нет. На этапе сборки в доступе нет ничего, кроме билд-директории, интернета и переданных переменных окружения.

Если так, то как тогда наиболее канонично запилить такую логику?

Все стандартные сервисные контейнеры, вроде мускуля, используешь как есть, в соответствии с их документацией. Для своего приложения создаёшь свой контейнер, и всё наполнение сервисных контейнеров контентом запихиваешь в скрипт запуска внутри своего контейнера. Если тебе надо сохранять данные между запусками - читай ещё раз про volumes и пиши свой скрипт соответствующе, что бы он не перетирал данные если они уже есть.

Что я делаю не так?

По большей части всё на данный момент. Мне кажется тут дело не в том, что именно ты делаешь, а в непонимании концепции докера и микросервисов в целом. Попробуй начать знакомство ещё раз, тут основные идеи могут показаться местами контринтуитивными.

Исходная версия manntes-live, :

На этапе build контейнер не должен видеть другие контейнеры?

Нет. На этапе сборки в доступе нет ничего, кроме билд-директории, интернета и переданных переменных окружения.

Если так, то как тогда наиболее канонично запилить такую логику?

Все стандартные сервисные контейнеры, вроде мускуля, используешь как есть, в соответствии с их документацией. Для своего приложения создаёшь свой контейнер, и всё наполнение сервисных контейнеров контентом запихиваешь в скрипт запуска внутри своего контейнера. Если тебе надо сохранять данные между запусками - читай ещё раз про volumes и пиши свой скрипт соответствующе, что бы он не перетирал данные если они уже есть.

Что я делаю не так?

По большей части всё на данные момент. Мне кажется тут дело не в том, что именно ты делаешь, а в непонимании концепции докера и микросервисов в целом. Попробуй начать знакомство ещё раз, тут основные идеи могут показаться местами контринтуитивными.