Traefik 2.2 - это Edge Router с открытым исходным кодом, который делает публикацию услуг легкой. Он получает запросы от вашей системы и выясняет, какие компоненты отвечают за их обработку. Что отличает Traefik, помимо его многочисленных функций, так это то, что он автоматически находит правильную конфигурацию для ваших услуг.
Последовательность действий я рассказываю так, как это делал я. Вариаций развертывания очень много, мой пример один из них
- Настраиваем доменную запись на текущий docker-хост - добавляем DNS запись
*.mysite.com - 10.11.12.13
Это позволит в дальнейшем присваивать сервисам в контейнерах доменные имена вида https://service.mysite.com
где, 10.11.12.13 - внешний IP адрес хоста с traefik
-
Открываем порты 80 и 443 на прослушивание
-
Генерируем пароль доступа в админку traefik2 командой:
echo $(htpasswd -nbB admin "SECRETPASSWORD") | sed -e s/\\$/\\$\\$/g
- создаем файл .env рядом с docker-compose и определяем в нем переменные:
LEVEL_DEBUG=DEBUG
ROOT_EMAIL=<ЭЛЕКТРОННАЯ_ПОЧТА_АДМИНИСТРАТОРА>
TRAEFIK_HOST_RULE=Host(`traefik.mysite.com`)
# echo $(htpasswd -nbB admin "dpVyMM7RuPdO") | sed -e s/\\$/\\$\\$/g
TRAEFIK_AUTH=admin:$$2y$$05$$tMqmJlTbBB3n3Ajd82E2L.L9u83htt30TEzofStSkrFfl1t1ppt56
сохраняем файл
- Если ранее не создавалась виртуальная сеть proxy, то создаем ее командой командой:
docker network create proxy
- Запускаем docker-compose командой:
docker-compose up -d
- При правильной настройке админка traefik 2.2 должна быть доступна по адресу
https://traefik.mysite.com