LINUX.ORG.RU

Docker Compose привязка к домену + порту

 ,


0

1

Я часто работаю над несколькими проектами одновременно, смотрю что то в одном, делаю во втором итд, нужно держать их запущенными.

Если все проекты на Apache2 + PHP, без докера, то я бы использовал VirtualHosts, сделал бы для каждого проекта домен, и тестировал бы все там.

А что можно сделать в docker, docker compose из подобного? Идеальным решением было бы привязать docker-compose.yml к домену, что бы:

curl project-a.dev:8080 это /dev/project-a/docker-compose.yml::httpd

curl project-b.dev:8080 это /dev/project-b/docker-compose.yml::httpd

Как это реализовать?

★★★★

Последнее исправление: MOPKOBKA (всего исправлений: 1)

повесь перед твоими проектами обратный прокси.

traefik в этом плане оч хорош. автоматом регает контейнеры по меткам на них.

https://doc.traefik.io/traefik/providers/docker/

aol ★★★★★
()
Последнее исправление: aol (всего исправлений: 1)
Ответ на: комментарий от aol

Поддерживаю. Сам так делал, в отдельном композ файле поднимал траефик с сетью для сервисов, а в проектных композах её юзал. Плюс встроенный LE радует.

Demacr ★★
()

Ещё один вариант. Если на хост-машине несколько адресов, то docker compose позволяет биндить порты на каждый адрес независимо:

   database:
     ports:
       - "127.0.0.1:3306:3306"

   redis:
     ports:
       - "127.0.0.1:6379:6379"
emorozov
()
Ответ на: комментарий от MOPKOBKA

запомнить все эти порты и не сбиваться для каждого проекта

Сверстать себе хытымэл файл со ссылками, повесить его на localhost:80.

Traefik, конечно, модная штука, но с рутлесс подманом его плюшки пока без бубна не работают, как я вижу.

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 2)
Ответ на: комментарий от Nervous

с рутлесс подманом

Как должны волновать шерифа проблемы индейцев? Верно - никак.

Опять какие-то сектанты себе на ровном месте придумали каких-то непонятных проблем.

Где эта порнуха вообще творится? В Федоре? Ну-ну…

aol ★★★★★
()
Ответ на: комментарий от Nervous

Танцев оказалось не очень много на самом деле, нужно только использовать пользовательский сокет подмана вместо системного докеровского и перевесить точку входа на порт >1024. И траефикомагия тут же начинает делать правильный вжух.

Nervous ★★★★★
()
Ответ на: комментарий от aol

Вроде разобрался, но когда включаю OpenVPN через NetworkManager, то перестает заходить на mycoolsite.localhost, пишет домен не найден, с чего начать решение проблемы? Через что он DNS записи локально меняет?

MOPKOBKA ★★★★
() автор топика