feat: add Adguard Home
This commit is contained in:
parent
863b8135b6
commit
91a4c68e06
@ -1,3 +1,5 @@
|
||||
COMPOSE_FILE=docker-compose.yml
|
||||
COMPOSE_PATH_SEPARATOR=:
|
||||
USER_ID=1000
|
||||
GROUP_ID=1000
|
||||
TIMEZONE="America/New_York"
|
||||
@ -8,7 +10,8 @@ PIA_USER=
|
||||
PIA_PASS=
|
||||
PIA_LOCAL_NETWORK="192.168.0.0/16"
|
||||
HOSTNAME=
|
||||
ADGUARD_HOSTNAME=
|
||||
LETS_ENCRYPT_EMAIL=
|
||||
CLOUDFLARE_EMAIL=
|
||||
CLOUDFLARE_DNS_API_TOKEN=
|
||||
CLOUDFLARE_ZONE_API_TOKEN=
|
||||
CLOUDFLARE_ZONE_API_TOKEN=
|
||||
|
8
.gitignore
vendored
8
.gitignore
vendored
@ -17,4 +17,10 @@
|
||||
/letsencrypt
|
||||
!/letsencrypt/.gitkeep
|
||||
/jellyfin
|
||||
!/jellyfin/.gitkeep
|
||||
!/jellyfin/.gitkeep
|
||||
/adguardhome/certs
|
||||
!/adguardhome/certs/.gitkeep
|
||||
/adguardhome/conf
|
||||
!/adguardhome/conf/.gitkeep
|
||||
/adguardhome/work
|
||||
!/adguardhome/work/.gitkeep
|
||||
|
0
adguardhome/certs/.gitkeep
Normal file
0
adguardhome/certs/.gitkeep
Normal file
0
adguardhome/conf/.gitkeep
Normal file
0
adguardhome/conf/.gitkeep
Normal file
68
adguardhome/docker-compose.yml
Normal file
68
adguardhome/docker-compose.yml
Normal file
@ -0,0 +1,68 @@
|
||||
version: '3.9'
|
||||
|
||||
services:
|
||||
dhcp-relay:
|
||||
image: modem7/dhcprelay:latest
|
||||
container_name: dhcp-relay
|
||||
restart: always
|
||||
command: ["-id", "enp2s0", "-iu", "br_adguard", "10.0.0.10"]
|
||||
cap_add:
|
||||
- NET_ADMIN
|
||||
network_mode: host
|
||||
mem_limit: 20m
|
||||
mem_reservation: 6m
|
||||
|
||||
adguardhome:
|
||||
image: adguard/adguardhome
|
||||
container_name: adguardhome
|
||||
restart: always
|
||||
networks:
|
||||
adguardhome:
|
||||
ipv4_address: 10.0.0.10
|
||||
docker-compose-nas:
|
||||
ports:
|
||||
- "53:53/tcp"
|
||||
- "53:53/udp"
|
||||
- "68:68/tcp"
|
||||
- "68:68/udp"
|
||||
- "853:853/tcp"
|
||||
volumes:
|
||||
- ./adguardhome/work:/opt/adguardhome/work
|
||||
- ./adguardhome/conf:/opt/adguardhome/conf
|
||||
- ./adguardhome/certs:/opt/adguardhome/certs
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.docker.network=docker-compose-nas"
|
||||
- "traefik.http.services.adguardhome.loadbalancer.server.port=3000"
|
||||
- "traefik.http.routers.adguardhome.rule=(Host(`${ADGUARD_HOSTNAME}`))"
|
||||
- "traefik.http.routers.adguardhome.tls=true"
|
||||
- "traefik.http.routers.adguardhome.tls.certresolver=myresolver"
|
||||
|
||||
traefik-certs-dumper:
|
||||
image: ldez/traefik-certs-dumper
|
||||
container_name: traefik-certs-dumper
|
||||
networks:
|
||||
docker-compose-nas:
|
||||
restart: always
|
||||
entrypoint: sh -c '
|
||||
apk add jq
|
||||
; while ! [ -e /data/acme.json ]
|
||||
|| ! [ `jq ".[] | .Certificates | length" /data/acme.json` != 0 ]; do
|
||||
sleep 1
|
||||
; done
|
||||
&& traefik-certs-dumper file --version v2 --watch
|
||||
--source /data/acme.json --dest /certs'
|
||||
volumes:
|
||||
- ./letsencrypt:/data
|
||||
- ./adguardhome/certs:/certs
|
||||
|
||||
networks:
|
||||
docker-compose-nas:
|
||||
external: true
|
||||
adguardhome:
|
||||
driver: bridge
|
||||
driver_opts:
|
||||
com.docker.network.bridge.name: br_adguard
|
||||
ipam:
|
||||
config:
|
||||
- subnet: 10.0.0.0/24
|
0
adguardhome/work/.gitkeep
Normal file
0
adguardhome/work/.gitkeep
Normal file
@ -171,7 +171,7 @@ services:
|
||||
restart: always
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.http.routers.heimdall.rule=(Host(`${HOSTNAME}`) && PathPrefix(`/`) || PathPrefix(`/`))
|
||||
- traefik.http.routers.heimdall.rule=(Host(`${HOSTNAME}`) && PathPrefix(`/`))
|
||||
- traefik.http.routers.heimdall.tls=true
|
||||
- traefik.http.routers.heimdall.tls.certresolver=myresolver
|
||||
- traefik.http.services.heimdall.loadbalancer.server.port=80
|
||||
|
23
flaresolverr/docker-compose.yml
Normal file
23
flaresolverr/docker-compose.yml
Normal file
@ -0,0 +1,23 @@
|
||||
version: '3.9'
|
||||
|
||||
services:
|
||||
flaresolverr:
|
||||
image: ghcr.io/flaresolverr/flaresolverr:latest
|
||||
container_name: flaresolverr
|
||||
restart: always
|
||||
networks:
|
||||
docker-compose-nas:
|
||||
environment:
|
||||
- LOG_LEVEL=${LOG_LEVEL:-info}
|
||||
- LOG_HTML=${LOG_HTML:-false}
|
||||
- CAPTCHA_SOLVER=${CAPTCHA_SOLVER:-none}
|
||||
- TZ=${TIMEZONE}
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.http.routers.flaresolverr.rule=PathPrefix(`/flaresolverr`)
|
||||
- traefik.http.routers.flaresolverr.tls=true
|
||||
- traefik.http.services.flaresolverr.loadbalancer.server.port=8191
|
||||
|
||||
networks:
|
||||
docker-compose-nas:
|
||||
external: true
|
Loading…
Reference in New Issue
Block a user