Merge pull request 'Added DoT support on dns.forust.xyz' (#2) from fix/dns into main
Reviewed-on: #2
This commit was merged in pull request #2.
This commit is contained in:
@@ -41,6 +41,9 @@ homepages/forust_files/assets/images/team/*
|
|||||||
# Traefik files
|
# Traefik files
|
||||||
traefik/letsencrypt/acme.json
|
traefik/letsencrypt/acme.json
|
||||||
traefik/logs/*
|
traefik/logs/*
|
||||||
|
|
||||||
|
# SSL Certificates
|
||||||
|
adguardhome/certs/*
|
||||||
traefik/certs/*
|
traefik/certs/*
|
||||||
|
|
||||||
# Monitoring
|
# Monitoring
|
||||||
@@ -83,3 +86,4 @@ replacements.txt
|
|||||||
|
|
||||||
# Temp files
|
# Temp files
|
||||||
edu_master/temp/
|
edu_master/temp/
|
||||||
|
temp/*
|
||||||
|
|||||||
@@ -3,45 +3,51 @@ services:
|
|||||||
image: adguard/adguardhome:latest
|
image: adguard/adguardhome:latest
|
||||||
container_name: adguardhome
|
container_name: adguardhome
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
|
||||||
- TZ=${TZ}
|
|
||||||
ports:
|
ports:
|
||||||
- "53:53/tcp"
|
- "53:53/tcp"
|
||||||
- "53:53/udp"
|
- "53:53/udp"
|
||||||
|
- "853:853/tcp" # DNS over TLS
|
||||||
# - "67:67/udp" # DHCP
|
# - "67:67/udp" # DHCP
|
||||||
# - "68:68/tcp" # DHCP
|
# - "68:68/tcp" # DHCP
|
||||||
- "3000:3000/tcp"
|
- "3000:3000/tcp"
|
||||||
volumes:
|
volumes:
|
||||||
- ./data/work:/opt/adguardhome/work
|
- ./data/work:/opt/adguardhome/work
|
||||||
- ./data/conf:/opt/adguardhome/conf
|
- ./data/conf:/opt/adguardhome/conf
|
||||||
|
- ./certs:/certs:ro
|
||||||
networks:
|
networks:
|
||||||
- proxy
|
- proxy
|
||||||
labels:
|
labels:
|
||||||
- "traefik.enable=true"
|
- "traefik.enable=true"
|
||||||
- "traefik.docker.network=proxy"
|
- "traefik.docker.network=proxy"
|
||||||
|
- "traefik.http.services.adguard.loadbalancer.server.port=3000"
|
||||||
|
|
||||||
# Prod Router
|
# Prod Router
|
||||||
- "traefik.http.routers.adguard.rule=Host(`adguard.forust.xyz`)"
|
- "traefik.http.routers.adguard.rule=Host(`dns.forust.xyz`) || Host(`adguard.forust.xyz`)"
|
||||||
- "traefik.http.routers.adguard.entrypoints=websecure"
|
- "traefik.http.routers.adguard.entrypoints=websecure"
|
||||||
- "traefik.http.routers.adguard.middlewares=security-headers@file"
|
- "traefik.http.routers.adguard.middlewares=security-headers@file"
|
||||||
- "traefik.http.routers.adguard.service=adguard"
|
- "traefik.http.routers.adguard.service=adguard"
|
||||||
- "traefik.http.routers.adguard.tls=true"
|
- "traefik.http.routers.adguard.tls=true"
|
||||||
- "traefik.http.services.adguard.loadbalancer.server.port=3000"
|
|
||||||
|
|
||||||
# Local Router
|
# Local Router
|
||||||
- "traefik.http.routers.adguard-local.rule=Host(`adguard.workstation.internal`) || Host(`adguard.internal`)"
|
- "traefik.http.routers.adguard-local.rule=Host(`dns.workstation.internal`) || Host(`adguard.internal`) || Host(`adguard.workstation.internal`)"
|
||||||
- "traefik.http.routers.adguard-local.entrypoints=websecure"
|
- "traefik.http.routers.adguard-local.entrypoints=websecure"
|
||||||
- "traefik.http.routers.adguard-local.middlewares=security-headers@file"
|
- "traefik.http.routers.adguard-local.middlewares=security-headers@file"
|
||||||
- "traefik.http.routers.adguard-local.service=adguard"
|
- "traefik.http.routers.adguard-local.service=adguard"
|
||||||
- "traefik.http.routers.adguard-local.tls=true"
|
- "traefik.http.routers.adguard-local.tls=true"
|
||||||
|
|
||||||
# Dev Router
|
# Dev Router
|
||||||
- "traefik.http.routers.adguard-dev.rule=Host(`adguard.gigaforust.internal`)"
|
- "traefik.http.routers.adguard-dev.rule=Host(`dns.gigaforust.internal`) || Host(`adguard.gigaforust.internal`)"
|
||||||
- "traefik.http.routers.adguard-dev.entrypoints=websecure"
|
- "traefik.http.routers.adguard-dev.entrypoints=websecure"
|
||||||
- "traefik.http.routers.adguard-dev.middlewares=security-headers@file"
|
- "traefik.http.routers.adguard-dev.middlewares=security-headers@file"
|
||||||
- "traefik.http.routers.adguard-dev.service=adguard"
|
- "traefik.http.routers.adguard-dev.service=adguard"
|
||||||
- "traefik.http.routers.adguard-dev.tls=true"
|
- "traefik.http.routers.adguard-dev.tls=true"
|
||||||
|
|
||||||
|
# DoH
|
||||||
|
- "traefik.http.routers.dns.rule=(Host(`dns.forust.xyz`) && PathPrefix(`/dns-query`))"
|
||||||
|
- "traefik.http.routers.dns.entrypoints=websecure"
|
||||||
|
- "traefik.http.routers.dns.service=adguard"
|
||||||
|
- "traefik.http.routers.dns.tls.certresolver=letsencrypt"
|
||||||
|
|
||||||
- glance.name=adguard
|
- glance.name=adguard
|
||||||
- glance.url=https://adguard.forust.xyz/
|
- glance.url=https://adguard.forust.xyz/
|
||||||
- glance.description=AdGuard Home is a network-wide software for blocking ads.
|
- glance.description=AdGuard Home is a network-wide software for blocking ads.
|
||||||
|
|||||||
@@ -19,16 +19,14 @@ services:
|
|||||||
- "--entryPoints.web.address=:80"
|
- "--entryPoints.web.address=:80"
|
||||||
- "--entryPoints.websecure.address=:443"
|
- "--entryPoints.websecure.address=:443"
|
||||||
- "--entryPoints.websecure.http.tls=true"
|
- "--entryPoints.websecure.http.tls=true"
|
||||||
- "--entryPoints.web.http.redirections.entryPoint.to=websecure"
|
|
||||||
- "--entryPoints.web.http.redirections.entryPoint.scheme=https"
|
|
||||||
- "--entryPoints.ssh.address=:2221"
|
- "--entryPoints.ssh.address=:2221"
|
||||||
|
|
||||||
# Let's Encrypt STAGING. CURRENTLY USING CF ORIGIN CA INSTEAD
|
# Let's Encrypt
|
||||||
# - "--certificatesresolvers.letsencrypt.acme.email=${EMAIL}"
|
- "--certificatesresolvers.letsencrypt.acme.email=${EMAIL}"
|
||||||
# - "--certificatesresolvers.letsencrypt.acme.storage=/letsencrypt/acme.json"
|
- "--certificatesresolvers.letsencrypt.acme.storage=/letsencrypt/acme.json"
|
||||||
|
- "--certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=web"
|
||||||
|
# # STAGING
|
||||||
# - "--certificatesresolvers.letsencrypt.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory"
|
# - "--certificatesresolvers.letsencrypt.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory"
|
||||||
# - "--certificatesresolvers.letsencrypt.acme.httpchallenge=true"
|
|
||||||
# - "--certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=web"
|
|
||||||
|
|
||||||
# Cloudflare
|
# Cloudflare
|
||||||
- "--entryPoints.web.forwardedHeaders.trustedIPs=173.245.48.0/20,103.21.244.0/22,103.22.200.0/22,103.31.4.0/22,141.101.64.0/18,108.162.192.0/18,190.93.240.0/20,188.114.96.0/20,197.234.240.0/22,198.41.128.0/17,162.158.0.0/15,104.16.0.0/13,104.24.0.0/14,172.64.0.0/13,131.0.72.0/22"
|
- "--entryPoints.web.forwardedHeaders.trustedIPs=173.245.48.0/20,103.21.244.0/22,103.22.200.0/22,103.31.4.0/22,141.101.64.0/18,108.162.192.0/18,190.93.240.0/20,188.114.96.0/20,197.234.240.0/22,198.41.128.0/17,162.158.0.0/15,104.16.0.0/13,104.24.0.0/14,172.64.0.0/13,131.0.72.0/22"
|
||||||
@@ -77,7 +75,7 @@ services:
|
|||||||
- ./dynamic:/etc/traefik/dynamic:ro
|
- ./dynamic:/etc/traefik/dynamic:ro
|
||||||
- ./certs:/certs:ro
|
- ./certs:/certs:ro
|
||||||
- ./logs:/var/log/traefik
|
- ./logs:/var/log/traefik
|
||||||
# - ./traefik/letsencrypt:/letsencrypt
|
- ./letsencrypt:/letsencrypt
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
- proxy
|
- proxy
|
||||||
@@ -87,4 +85,4 @@ services:
|
|||||||
|
|
||||||
networks:
|
networks:
|
||||||
proxy:
|
proxy:
|
||||||
external: true
|
external: true
|
||||||
|
|||||||
@@ -1,33 +1,5 @@
|
|||||||
http:
|
http:
|
||||||
middlewares:
|
middlewares:
|
||||||
# HTTPS Redirect
|
|
||||||
redirect-https:
|
|
||||||
redirectScheme:
|
|
||||||
scheme: https
|
|
||||||
permanent: true
|
|
||||||
|
|
||||||
# Metube Basic Auth
|
|
||||||
metube-auth:
|
|
||||||
basicAuth:
|
|
||||||
users:
|
|
||||||
- "vv:$2y$05$JdT8AGUO9bd.E/PiCmKaoOJS1RFlXkrrmZ5mJ4f8/a1bEW39L3FbS"
|
|
||||||
|
|
||||||
realm: "MeTube Access"
|
|
||||||
|
|
||||||
# Basic Auth Traefik Dashboard
|
|
||||||
auth:
|
|
||||||
basicAuth:
|
|
||||||
users:
|
|
||||||
- "admin:$2y$05$.CKDD82sNUxcpaRrLbHuK.dopqt1fgurc2yfTKAT5OFzT7RvPrJHK"
|
|
||||||
realm: "Traefik Dashboard"
|
|
||||||
|
|
||||||
# Basic Auth Dockmon
|
|
||||||
dockmon-auth:
|
|
||||||
basicAuth:
|
|
||||||
users:
|
|
||||||
- "admin:$2y$05$.CKDD82sNUxcpaRrLbHuK.dopqt1fgurc2yfTKAT5OFzT7RvPrJHK"
|
|
||||||
realm: "Dockmon Access"
|
|
||||||
|
|
||||||
# Cloudflare IP Whitelist
|
# Cloudflare IP Whitelist
|
||||||
cloudflare-ipwhitelist:
|
cloudflare-ipwhitelist:
|
||||||
ipWhiteList:
|
ipWhiteList:
|
||||||
|
|||||||
@@ -0,0 +1,23 @@
|
|||||||
|
http:
|
||||||
|
middlewares:
|
||||||
|
redirect-https:
|
||||||
|
redirectScheme:
|
||||||
|
scheme: https
|
||||||
|
permanent: true
|
||||||
|
|
||||||
|
routers:
|
||||||
|
acme-challenge-exempt:
|
||||||
|
rule: "PathPrefix(`/.well-known/acme-challenge`)"
|
||||||
|
entryPoints:
|
||||||
|
- web
|
||||||
|
service: noop@internal
|
||||||
|
priority: 100
|
||||||
|
|
||||||
|
http-catchall:
|
||||||
|
rule: "HostRegexp(`{host:.+}`)"
|
||||||
|
entryPoints:
|
||||||
|
- web
|
||||||
|
middlewares:
|
||||||
|
- redirect-https
|
||||||
|
service: noop@internal
|
||||||
|
priority: 1
|
||||||
Reference in New Issue
Block a user