diff --git a/.gitignore b/.gitignore index 377c08f..66b9cbf 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,6 @@ certs/* .env* traefik/letsencrypt/acme.json edu_master/volumes/ -dockmon/dockmon_data/* +dockmon/dockmon_data/ portainer_data/* adguardhome/* \ No newline at end of file diff --git a/adguard-docker-compose.yaml b/adguard-docker-compose.yaml new file mode 100644 index 0000000..e1201ea --- /dev/null +++ b/adguard-docker-compose.yaml @@ -0,0 +1,36 @@ +services: + adguard: + image: adguard/adguardhome:latest + container_name: adguardhome + restart: unless-stopped + environment: + - TZ=${TZ} + ports: + - "53:53/tcp" + - "53:53/udp" + # - "67:67/udp" # DHCP + # - "68:68/tcp" # DHCP + volumes: + - ./adguardhome/work:/opt/adguardhome/work + - ./adguardhome/conf:/opt/adguardhome/conf + networks: + - traefik-proxy + labels: + - "traefik.enable=true" + - "traefik.http.routers.adguard.entrypoints=web" + - "traefik.http.routers.${ADGUARD_APPNAME:-adguard}.rule=Host(`${ADGUARD_SUBDOMEN:-adguard}.${HOST:-workstation}`)" + - "traefik.http.routers.${ADGUARD_APPNAME:-adguard}.middlewares=adguard-redirect" + - "traefik.http.middlewares.adguard-redirect.redirectscheme.scheme=https" + + - "traefik.http.routers.adguard-secure.entrypoints=websecure" + - "traefik.http.routers.adguard-secure.rule=Host(`${ADGUARD_SUBDOMEN:-adguard}.${HOST:-workstation}`)" + - "traefik.http.services.adguard-secure.loadbalancer.server.port=3000" + - "traefik.http.routers.adguard-secure.tls=true" + - "traefik.http.routers.adguard-secure.tls.certresolver=le" +networks: + traefik-proxy: + external: true + + + + \ No newline at end of file diff --git a/traefik-docker-compose.yaml b/traefik-docker-compose.yaml index 6d9385c..df84248 100644 --- a/traefik-docker-compose.yaml +++ b/traefik-docker-compose.yaml @@ -15,7 +15,9 @@ services: - "--entryPoints.web.http.redirections.entryPoint.to=websecure" - "--entryPoints.web.http.redirections.entryPoint.scheme=https" - --serversTransport.insecureSkipVerify=true - # Let's Encrypt configuration + - "--providers.file.directory=/etc/traefik/dynamic" + - "--providers.file.watch=true" + # Let's Encrypt - "--certificatesresolvers.le.acme.email=${EMAIL:-bobrovod@national.shitposting.agency}" - "--certificatesresolvers.le.acme.storage=/letsencrypt/acme.json" - "--certificatesresolvers.le.acme.httpchallenge.entrypoint=web" diff --git a/traefik/dynamic/tls.yml b/traefik/dynamic/tls.yml new file mode 100644 index 0000000..0baad5c --- /dev/null +++ b/traefik/dynamic/tls.yml @@ -0,0 +1,4 @@ +tls: + certificates: + - certFile: /certs/workstation+3.pem + keyFile: /certs/workstation+3-key.pem