#docker
Вопрос:
Я использую контейнер docker для запуска некоторых тестов браузера.
Для некоторого рабочего процесса OAuth мне нужно пользовательское имя хоста, которое я могу переслать, например, на сайт OAuth my.dev.site
.
Обычно в средах, отличных от докеров, я просто добавляю запись в /etc/hosts
файл, которая приводит my.dev.site
к 127.0.0.1
Возможно ли это с докером, и если да, то как?
Комментарии:
1. Просто добавьте запись в свой
/etc/hosts
файл внутри контейнера?2. Это может быть самым простым ответом, я не знал, что
/etc/hosts
в контейнерах есть файл (например, дляubuntu
базового изображения). Сначала я должен попробовать. Спасибо @супер
Ответ №1:
По умолчанию узлы контейнеров docker идентифицируются по их имени.
Однако в файле компоновки вы можете использовать extra_host
поле для добавления имен хостов в /etc/hosts в контейнерах.
https://docs.docker.com/compose/compose-file/compose-file-v3/#extra_hosts
extra_hosts:
- "my.dev.site:127.0.0.1"
И версия запуска docker
https://docs.docker.com/engine/reference/run/#network-settings
docker run --add-host my.dev.site:127.0.0.1 <image>