Add Pi-hole with AdGuard DOH/DOT integration, reorganize swarm stacks, add DNS/n8n docs
This commit is contained in:
123
services/swarm/traefik/dynamic.yml
Normal file
123
services/swarm/traefik/dynamic.yml
Normal file
@@ -0,0 +1,123 @@
|
||||
http:
|
||||
middlewares:
|
||||
# Middleware to redirect non-www to www (optional, valid for steril.xyz if needed)
|
||||
# my-www-redirect:
|
||||
# redirectRegex:
|
||||
# regex: "^https?://(?:www\\.)?(.+)"
|
||||
# replacement: "https://www.$${1}"
|
||||
|
||||
# Secure Headers Middleware
|
||||
security-headers:
|
||||
headers:
|
||||
customResponseHeaders:
|
||||
X-Robots-Tag: "none,noarchive,nosnippet,notranslate,noimageindex"
|
||||
server: ""
|
||||
sslProxyHeaders:
|
||||
X-Forwarded-Proto: https
|
||||
referrerPolicy: "same-origin"
|
||||
hostsProxyHeaders:
|
||||
- "X-Forwarded-Host"
|
||||
customRequestHeaders:
|
||||
X-Forwarded-Proto: "https"
|
||||
contentTypeNosniff: true
|
||||
browserXssFilter: true
|
||||
forceSTSHeader: true
|
||||
stsIncludeSubdomains: true
|
||||
stsSeconds: 63072000
|
||||
stsPreload: true
|
||||
|
||||
# Basic Auth Middleware (Example)
|
||||
# my-basic-auth:
|
||||
# basicAuth:
|
||||
# users:
|
||||
# - "admin:$apr1$..."
|
||||
|
||||
tls:
|
||||
options:
|
||||
default:
|
||||
minVersion: VersionTLS12
|
||||
cipherSuites:
|
||||
- TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
|
||||
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
|
||||
- TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
|
||||
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
|
||||
- TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305
|
||||
|
||||
routers:
|
||||
# Pi-hole
|
||||
pihole:
|
||||
rule: "Host(`pihole.sterl.xyz`)"
|
||||
service: pihole
|
||||
entryPoints:
|
||||
- websecure
|
||||
tls:
|
||||
certResolver: cfresolver
|
||||
|
||||
# Pi-hole 2
|
||||
pihole2:
|
||||
rule: "Host(`pihole2.sterl.xyz`)"
|
||||
service: pihole2
|
||||
entryPoints:
|
||||
- websecure
|
||||
tls:
|
||||
certResolver: cfresolver
|
||||
|
||||
# Proxmox (HTTPS)
|
||||
proxmox:
|
||||
rule: "Host(`proxmox.sterl.xyz`)"
|
||||
service: proxmox
|
||||
entryPoints:
|
||||
- websecure
|
||||
tls:
|
||||
certResolver: cfresolver
|
||||
|
||||
# Proxmox Monitor
|
||||
proxmox-monitor:
|
||||
rule: "Host(`proxmox-monitor.sterl.xyz`)"
|
||||
service: proxmox-monitor
|
||||
entryPoints:
|
||||
- websecure
|
||||
tls:
|
||||
certResolver: cfresolver
|
||||
|
||||
# OpenMediaVault (OMV)
|
||||
omv:
|
||||
rule: "Host(`omv.sterl.xyz`)"
|
||||
service: omv
|
||||
entryPoints:
|
||||
- websecure
|
||||
tls:
|
||||
certResolver: cfresolver
|
||||
|
||||
services:
|
||||
pihole:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: "http://192.168.1.196:7300"
|
||||
|
||||
pihole2:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: "http://192.168.1.245:7300"
|
||||
|
||||
proxmox:
|
||||
loadBalancer:
|
||||
servers:
|
||||
# Proxmox typically runs on HTTPS with self-signed certs
|
||||
- url: "https://192.168.1.57:8006"
|
||||
serversTransport: "insecureSkipVerify"
|
||||
|
||||
proxmox-monitor:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: "http://192.168.1.57:8008"
|
||||
|
||||
omv:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: "http://192.168.1.70:80"
|
||||
|
||||
serversTransports:
|
||||
insecureSkipVerify:
|
||||
insecureSkipVerify: true
|
||||
|
||||
Reference in New Issue
Block a user