Refactor: Reorganize services into standalone structure

This commit is contained in:
2026-01-25 15:19:53 -06:00
parent cf360234c1
commit 10521ee94d
52 changed files with 3253 additions and 11 deletions

View File

@@ -0,0 +1,47 @@
version: "3"
services:
dns-server:
container_name: technitium-dns
hostname: technitium-dns
image: technitium/dns-server:latest
ports:
- "5380:5380/tcp" # Web Console
- "53:53/udp" # DNS
- "53:53/tcp" # DNS
- "853:853/tcp" # DNS-over-TLS
- "8443:443/tcp" # DNS-over-HTTPS
# Uncomment if using DHCP
# - "67:67/udp"
environment:
- DNS_SERVER_DOMAIN=dns-server
# - DNS_SERVER_ADMIN_PASSWORD=password # Set via UI on first login
volumes:
- ./config:/etc/dns/config
# Mount AdGuard certs for migration/usage
# Path in container: /etc/dns/certs
- adguard_certs:/etc/dns/certs:ro
restart: unless-stopped
sysctls:
- net.ipv4.ip_local_port_range=1024 65000
networks:
- traefik-public
labels:
- "traefik.enable=true"
# Web Console
- "traefik.http.routers.technitium.rule=Host(`dns.sterl.xyz`)"
- "traefik.http.routers.technitium.entrypoints=websecure"
- "traefik.http.routers.technitium.tls.certresolver=cfresolver"
- "traefik.http.services.technitium.loadbalancer.server.port=5380"
- "docktail.enable=true"
- "docktail.name=technitium"
- "docktail.container_port=5380"
networks:
traefik-public:
external: true
volumes:
adguard_certs:
external: true
# Volume created by docker run
name: adguard_certs