Привет всем,
У меня есть Synology DS1520+, на котором работают все мои контейнеры Docker.
Эти контейнеры Docker подключены к VPN-сети, которая настроена с контейнером (Nord) VPN. Я хочу настроить обратный прокси для этих контейнеров, потому что обратный прокси Synology оказался слишком сложным, если его сбросить. Однако эта же настройка работала в моем настройках обратного прокси на Synology…
Менеджер прокси Nginx работает корректно, и контейнеры, и сеть тоже работают. Я пробовал разные методы через различные посты на форумах и в руководствах, но я довольно новичок в этом, и моя настройка отличается от общепринятых.
Мне удавалось это сделать в один раз, но только если я подключаю все свои контейнеры к моему Macvlan (сделано через Portainer), но тогда VPN будет бесполезен (а я не хочу этого).
Я использую Cloudflare для своего DNS, и это тоже кажется в порядке.
Я пробовал подключить Nginx к моей VPN-сети, чтобы они все были в одной сети, но это не работает.
Я получаю либо ошибку 504, либо ошибку 523 шлюза…
Я подключил Nginx к своему маршрутизатору (через Macvlan), потому что порты 80 и 443 заняты самой Synology.
У меня нет настроечного файла, потому что я не совсем понимаю его или не могу найти его на YouTube каналах с объяснениями.
Вот мой файл docker compose для Nginx Proxy с Ombi в качестве примера контейнера, для которого я хочу настроить обратный прокси. Пожалуйста, дайте знать, если я упустил что-то важное или сделал ошибку новичка. Я тоже не силен в сетях и считаю, что это основная проблема и причина, почему я написал этот пост. Всем спасибо заранее:
---
version: '3'
services:
nginxproxy:
image: 'jc21/nginx-proxy-manager:latest'
container_name: NPM
restart: always
depends_on:
- db
ports:
# Эти порты в формате <порт-хоста>:<порт-контейнера>
- '888:80' # Публичный HTTP Порт
- '4444:443' # Публичный HTTPS Порт
- '81:81' # Порт веб-администратора
# Добавьте любой другой порт потоковой передачи, который хотите открыть
# - '21:21' # FTP
environment:
# Параметры подключения к Mysql/Maria:
DB_MYSQL_HOST: "db"
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: "npm"
DB_MYSQL_PASSWORD: "npm"
DB_MYSQL_NAME: "npm"
# Убедитесь, что этот параметр комментарий, если IPv6 не включен на вашем хосте
DISABLE_IPV6: 'true'
volumes:
- /volume1/docker/nginxproxymanager/data:/data
- /volume1/docker/nginxproxymanager/letsencrypt:/etc/letsencrypt
- /volume1/docker/nginxproxymanager/themepark:/etc/cont-init.d/99-themepark
- /var/run/docker.sock:/tmp/docker.sock:ro
stdin_open: true
tty: true
networks:
net:
ipv4_address: 192.168.x.x
#Или networks:
vpn_default
db:
image: 'jc21/mariadb-aria:latest'
container_name: NPM-DB
restart: always
environment:
MYSQL_ROOT_PASSWORD: "npm"
MYSQL_DATABASE: "npm"
MYSQL_USER: "npm"
MYSQL_PASSWORD: "npm"
MARIADB_AUTO_UPGRADE: 1
volumes:
- /volume1/docker/nginxproxymanager/mysql:/var/lib/mysql
stdin_open: true
tty: true
networks:
vpn_default
ombi:
image: lscr.io/linuxserver/ombi:latest
container_name: Ombi
environment:
- PUID=1026
- PGID=100
- TZ=Europe/xxx
#- BASE_URL=/ombi #опционально
volumes:
- /volume1/docker/ombi/config:/config
ports:
- 3579:3579
restart: unless-stopped
stdin_open: true
tty: true
networks:
vpn_default