Добавление записи в файл hosts

Мне нужно добавить запись в файл 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 просто запускает все контейнеры, которые были запущены во время выключения, с той же конфигурацией.