- Implement multi-server Traefik + Sablier architecture - Add label-based automatic service discovery - Create separate Sablier stack deployment - Add remote server deployment workflow (Option 3) - Add 9 new functions for multi-server management - Remove deprecated config-templates folder - Replace hardcoded private data with placeholders - Update backup timestamp format to YY_MM_DD_hh_mm - Add markup.yml to .gitignore Breaking changes: - Removed Sablier from core docker-compose.yml (now separate stack) - Config templates moved from config-templates/ to docker-compose/core/ - REQUIRED_VARS now dynamic based on deployment type
55 lines
1.3 KiB
YAML
55 lines
1.3 KiB
YAML
# Traefik Static Configuration
|
|
# Copy to /opt/stacks/traefik/traefik.yml
|
|
|
|
global:
|
|
checkNewVersion: true
|
|
sendAnonymousUsage: false
|
|
|
|
api:
|
|
dashboard: true
|
|
insecure: false # Dashboard accessible via Traefik route with Authelia
|
|
|
|
entryPoints:
|
|
web:
|
|
address: ":80"
|
|
http:
|
|
redirections:
|
|
entryPoint:
|
|
to: websecure
|
|
scheme: https
|
|
|
|
websecure:
|
|
address: ":443"
|
|
http:
|
|
tls:
|
|
certResolver: letsencrypt
|
|
|
|
certificatesResolvers:
|
|
letsencrypt:
|
|
acme:
|
|
email: admin@example.com # Your email for Let's Encrypt notifications
|
|
caServer: https://acme-v02.api.letsencrypt.org/directory # Use staging for testing
|
|
storage: /letsencrypt/acme.json
|
|
# DNS challenge - For wildcard certificates (*.yourdomain.duckdns.org)
|
|
# Works with DuckDNS - requires DUCKDNS_TOKEN in environment
|
|
dnsChallenge:
|
|
provider: duckdns
|
|
|
|
providers:
|
|
docker:
|
|
endpoint: "unix:///var/run/docker.sock"
|
|
exposedByDefault: false # Only expose services with traefik.enable=true
|
|
network: traefik-network
|
|
|
|
file:
|
|
directory: /dynamic
|
|
watch: true
|
|
|
|
log:
|
|
level: DEBUG # DEBUG, INFO, WARN, ERROR
|
|
filePath: /var/log/traefik/traefik.log
|
|
|
|
accessLog:
|
|
filePath: /var/log/traefik/access.log
|
|
bufferingSize: 100
|