Я нахожусь в уникальной ситуации, когда пытаюсь написать docker -компонентный файл для сконфигурированных контейнеров, которые уже запущены, и я полагаю, я вышел из строя. Сейчас я пытаюсь добавить к нему безопасность TLS.
Я натолкнулся на jwilder / nginx -proxy , который выглядит как отличное решение, поскольку я считаю, что запустил бы прокси-контейнер. Но как связать с тем же портом, на котором работает контейнер nginx?
Мой nginx находится на порту 80
, выставлен 80
. Прокси находится на 80
. Я также пытался docker-compose up
с удалением порта из nginx, но безрезультатно.
TLS всегда кажется трудной для настройки, но я продолжаю пытаться погрузиться в проблему без страха, и, возможно, это Это просто недоразумение основных сетевых концепций, которые удерживают меня.
Мой docker-compose.yml
выглядит следующим образом.
version: '3.1'
services:
nginx:
image: nginx:latest
ports:
- "80:80"
expose:
- "80"
environment:
- VIRTUAL_HOST=long-qualified-subdomain.domain.com
volumes:
- /opt/var/www/site:/var/www/site:rw
- /opt/etc/nginx/conf.d:/etc/nginx/conf.d:rw
links:
- php-fpm
php-fpm:
image: php-fpm:pdo_mysql
restart: always
volumes:
- /opt/var/www/site:/var/www/site:rw
nginx-proxy:
image: jwilder/nginx-proxy
ports:
- "80:80"
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
mysql:
image: mariadb
restart: always
environment:
- MYSQL_ROOT_PASSWORD=XXXXXX
volumes:
- /var/lib/mysql
Любая помощь или направление будут очень признательны, спасибо!