РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗dcTrPxTw 8 of 28 menu
◀ ▶

Два сайта в Docker

Два сайта делят один порт прокси и различаются именем хоста. Запрос на shop.localhost и запрос на api.localhost приходят на один 80, а Traefik выбирает контейнер по правилу роутера.

Сервис shop на nginx и сервис api на traefik/whoami без ports. У каждого свой роутер shop и api с разными хостами. Один прокси слушает 80:

services: proxy: image: traefik:3 command: - --entrypoints.web.address=:80 - --providers.docker=true - --providers.docker.exposedbydefault=false ports: - "80:80" volumes: - /var/run/docker.sock:/var/run/docker.sock:ro shop: image: nginx labels: - traefik.enable=true - traefik.http.routers.shop.rule=Host(`shop.localhost`) api: image: traefik/whoami labels: - traefik.enable=true - traefik.http.routers.api.rule=Host(`api.localhost`)

Фоновый запуск:

docker compose up -d

http://shop.localhost показывает nginx, http://api.localhost - текст whoami с именем контейнера. Ни shop, ни api порт на компьютер не публикуют.

Опишите прокси на 80, сервис store на nginx с хостом store.localhost и сервис info на traefik/whoami с хостом info.localhost.

Откройте оба адреса и запишите, чем отличается содержимое страниц store.localhost и info.localhost.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить