Files
2026-10-22 22:33:51 +06:00

288 lines
8.0 KiB
YAML

networks:
ssankur:
external: "true"
services:
traefik:
configs:
- source: "config"
target: "/etc/traefik/config.yaml"
- source: "traefik"
target: "/etc/traefik/traefik.yaml"
container_name: "traefik"
environment:
- "CF_DNS_API_TOKEN=${CF_DNS_API_TOKEN}"
- "TZ=Asia/Dhaka"
image: "traefik:latest"
networks:
- "ssankur"
ports:
- "10.1.1.253:80:80/tcp"
- "10.1.1.253:443:443/tcp"
restart: "on-failure"
volumes:
- "./mounts/letsencrypt:/etc/letsencrypt"
configs:
config:
content: |
http:
routers:
adguard:
rule: "Host(`adguard.ssankur.com`)"
service: "adguard"
adminer:
rule: "Host(`adminer.ssankur.com`)"
service: "adminer"
bazarr:
rule: "Host(`bazarr.ssankur.com`)"
service: "bazarr"
dockhand:
rule: "Host(`dockhand.ssankur.com`)"
service: "dockhand"
dozzle:
rule: "Host(`dozzle.ssankur.com`)"
service: "dozzle"
ente-auth:
rule: "Host(`ente-auth.ssankur.com`)"
service: "ente-auth"
ente-server:
rule: "Host(`ente-server.ssankur.com`)"
service: "ente-server"
esphome:
rule: "Host(`esphome.ssankur.com`)"
service: "esphome"
gatus:
rule: "Host(`gatus.ssankur.com`)"
service: "gatus"
gitea:
rule: "Host(`gitea.ssankur.com`)"
service: "gitea"
grocy:
rule: "Host(`grocy.ssankur.com`)"
service: "grocy"
home-assistant:
rule: "Host(`home-assistant.ssankur.com`)"
service: "home-assistant"
homepage:
rule: "Host(`homepage.ssankur.com`)"
service: "homepage"
immich:
rule: "Host(`immich.ssankur.com`)"
service: "immich"
ledfx:
rule: "Host(`ledfx.ssankur.com`)"
service: "ledfx"
music-assistant:
rule: "Host(`music-assistant.ssankur.com`)"
service: "music-assistant"
openwrt:
rule: "Host(`openwrt.ssankur.com`)"
service: "openwrt"
pfsense:
rule: "Host(`pfsense.ssankur.com`)"
service: "pfsense"
prowlarr:
rule: "Host(`prowlarr.ssankur.com`)"
service: "prowlarr"
proxmox:
rule: "Host(`proxmox.ssankur.com`)"
service: "proxmox"
qbittorrent:
rule: "Host(`qbittorrent.ssankur.com`)"
service: "qbittorrent"
qbittorrent-vpn:
rule: "Host(`qbittorrent-vpn.ssankur.com`)"
service: "qbittorrent-vpn"
radarr:
rule: "Host(`radarr.ssankur.com`)"
service: "radarr"
radicale:
rule: "Host(`radicale.ssankur.com`)"
service: "radicale"
scrutiny:
rule: "Host(`scrutiny.ssankur.com`)"
service: "scrutiny"
sonarr:
rule: "Host(`sonarr.ssankur.com`)"
service: "sonarr"
traefik:
rule: "Host(`traefik.ssankur.com`)"
service: "traefik"
traefik-dmz:
rule: "Host(`traefik-dmz.ssankur.com`)"
service: "traefik-dmz"
truenas:
rule: "Host(`truenas.ssankur.com`)"
service: "truenas"
vaultwarden:
rule: "Host(`vaultwarden.ssankur.com`)"
service: "vaultwarden"
services:
adguard:
loadBalancer:
servers:
- url: "http://adguard-home:3000"
adminer:
loadBalancer:
servers:
- url: "http://adminer:8080"
bazarr:
loadBalancer:
servers:
- url: "http://bazarr:6767"
dockhand:
loadBalancer:
servers:
- url: "http://dockhand:3000"
dozzle:
loadBalancer:
servers:
- url: "http://dozzle:8080"
ente-auth:
loadBalancer:
servers:
- url: "http://ente-web:3003"
ente-server:
loadBalancer:
servers:
- url: "http://ente-server:8080"
esphome:
loadBalancer:
servers:
- url: "http://esphome:6052"
gatus:
loadBalancer:
servers:
- url: "http://gatus:8080"
gitea:
loadBalancer:
servers:
- url: "http://gitea:3000"
grocy:
loadBalancer:
servers:
- url: "http://grocy"
home-assistant:
loadBalancer:
servers:
- url: "http://home-assistant"
homepage:
loadBalancer:
servers:
- url: "http://homepage:3000"
immich:
loadBalancer:
servers:
- url: "http://immich:2283"
ledfx:
loadBalancer:
servers:
- url: "http://ledfx:8888"
music-assistant:
loadBalancer:
servers:
- url: "http://music-assistant:8095"
openwrt:
loadBalancer:
servers:
- url: "https://10.1.1.254"
pfsense:
loadBalancer:
servers:
- url: "https://10.1.1.1"
prowlarr:
loadBalancer:
servers:
- url: "http://prowlarr:9696"
proxmox:
loadBalancer:
servers:
- url: "https://10.1.1.200:8006"
qbittorrent:
loadBalancer:
servers:
- url: "http://10.1.4.2:8080"
qbittorrent-vpn:
loadBalancer:
servers:
- url: "http://10.1.4.2:8082"
radarr:
loadBalancer:
servers:
- url: "http://radarr:7878"
radicale:
loadBalancer:
servers:
- url: "http://radicale:5232"
scrutiny:
loadBalancer:
servers:
- url: "http://10.1.1.201:8080"
sonarr:
loadBalancer:
servers:
- url: "http://sonarr:8989"
traefik:
loadBalancer:
servers:
- url: "http://traefik:8080"
traefik-dmz:
loadBalancer:
servers:
- url: "http://10.1.4.2:8081"
truenas:
loadBalancer:
servers:
- url: "https://10.1.1.201"
vaultwarden:
loadBalancer:
servers:
- url: "http://vaultwarden"
traefik:
content: |
api:
disableDashboardAd: "true"
insecure: "true"
certificatesResolvers:
letsencrypt:
acme:
dnsChallenge:
propagation:
delayBeforeChecks: "300"
disableANSChecks: "true"
disableChecks: "true"
provider: "cloudflare"
email: "ankur7914@gmail.com"
storage: "/etc/letsencrypt/acme.json"
entryPoints:
http:
address: ":80"
http:
redirections:
entryPoint:
to: "https"
https:
address: ":443"
asDefault: "true"
http:
tls:
certResolver: "letsencrypt"
domains:
- main: "ssankur.com"
sans:
- "*.ssankur.com"
log:
level: "INFO"
providers:
file:
filename: "/etc/traefik/config.yaml"
serversTransport:
insecureSkipVerify: "true"