39 lines
1.0 KiB
YAML
39 lines
1.0 KiB
YAML
# Пример: Caddy как reverse proxy с авто-SSL (Let's Encrypt)
|
||
#
|
||
# Запуск вместе с панелью:
|
||
# docker compose -f docker-compose.yml -f deploy/caddy/docker-compose.caddy.yml up -d --build
|
||
#
|
||
# Перед стартом:
|
||
# 1. DNS A/AAAA домена → IP сервера
|
||
# 2. Открыты порты 80 и 443
|
||
# 3. В .env задайте DOMAIN=panel.example.com
|
||
# 4. В docker-compose панели лучше НЕ публиковать 8080 наружу (или оставить только localhost)
|
||
|
||
services:
|
||
caddy:
|
||
image: caddy:2-alpine
|
||
container_name: vpn-panel-caddy
|
||
restart: unless-stopped
|
||
ports:
|
||
- "80:80"
|
||
- "443:443"
|
||
- "443:443/udp"
|
||
environment:
|
||
DOMAIN: ${DOMAIN:-panel.example.com}
|
||
volumes:
|
||
- ./Caddyfile:/etc/caddy/Caddyfile:ro
|
||
- caddy_data:/data
|
||
- caddy_config:/config
|
||
networks:
|
||
- vpn-net
|
||
depends_on:
|
||
- app
|
||
|
||
volumes:
|
||
caddy_data:
|
||
caddy_config:
|
||
|
||
networks:
|
||
vpn-net:
|
||
name: vpn-panel-net
|