Мне нужно добавить запись в файл hosts контейнера mail-receiver. Можно ли это сделать во время установки, используя запись в YAML-конфигурации? Я пробовал использовать run: и exec:, но без успеха.
Я сейчас столкнулся с той же проблемой. Я также пытался вручную добавить команду для выполнения в конфигурационном файле, но безрезультатно.
Файл hosts управляется Docker, и обычно для этого нужно использовать --add-host. Пока я не знаю, как добавить этот аргумент при запуске контейнера Discourse.
Я нашёл в интернете несколько ссылок, где рекомендуется добавить следующее в файл конфигурации (например, containers/app.yml):
docker_args: "--add-host myhost:192.0.2.1"
редактирование: Текст ниже неверен. Он был вызван ошибкой «недостаточно места на диске» во время пересборки с моей стороны. Достаточно добавить опцию конфигурации выше в файл конфигурации.
Однако это не работает сразу после пересборки. Похоже, что запуск, происходящий в конце пересборки, не учитывает эту опцию. ./launcher stop app — учитывает.
Чтобы это заработало, мне пришлось выполнить следующий процесс:
Отредактироватьcontainers/app.ymlи добавить указанную выше строку как аргумент «верхнего/корневого уровня»Пересобрать контейнер с помощью./launcher rebuild appУничтожить контейнер по умолчанию, запущенный в ходе пересборки, с помощью./launcher destroy appЗапустить новый контейнер с помощью./launcher start app
Это, кажется, устойчиво к перезагрузкам хоста. Я подозреваю, что поведение при перезагрузке зависит от Docker: демон Docker просто запускает все контейнеры, которые были запущены во время выключения, с той же конфигурацией.