--- /dev/null
+services:
+ pdns-auth:
+ container_name: pdns-auth
+ image: powerdns/pdns-auth-50:latest
+ restart: always
+ #ports:
+ # - "8081:8081/tcp"
+ environment:
+ - TZ=${DOCKER_TZ}
+ volumes:
+ - ${DOCKER_CFG_DIR}/powerdns/config/auth.conf:/etc/powerdns/pdns.conf:ro
+ - ${DOCKER_CFG_DIR}/powerdns/data-auth:/var/lib/powerdns
+ networks:
+ proxy:
+ ipv4_address: 172.18.0.10
+ labels:
+ - "traefik.enable=false"
+
+ pdns-recursor:
+ container_name: pdns-recursor
+ #image: powerdns/pdns-recursor-54:latest
+ image: powerdns/pdns-recursor-52:latest
+ restart: always
+ ports:
+ - "53:53/udp"
+ - "53:53/tcp"
+ - "8053:8053/tcp"
+ depends_on:
+ - pdns-auth
+ environment:
+ - TZ=${DOCKER_TZ}
+ volumes:
+ - ${DOCKER_CFG_DIR}/powerdns/config/recursor.yml:/etc/powerdns/recursor.yml:ro
+ networks:
+ - proxy
+ labels:
+ - "traefik.enable=false"
+
+ powerdns-admin:
+ image: ngoduykhanh/powerdns-admin:latest
+ container_name: pdns-admin
+ ports:
+ - "9191:80"
+ depends_on:
+ - pdns-auth
+ environment:
+ - TZ=${DOCKER_TZ}
+ #- PDNS_API_KEY=supersecret
+ - PDNS_HOST=pdns-auth
+ - PDNS_PORT=8081
+ user: "953:953"
+ volumes:
+ - ${DOCKER_CFG_DIR}/powerdns/data-admin:/data
+ networks:
+ - proxy
+ labels:
+ - "traefik.enable=true"
+ # Router: HTTP
+ - "traefik.http.routers.pdns.entrypoints=http"
+ - "traefik.http.routers.pdns.rule=Host(`dns.giorgioravera.it`)"
+ #- "traefik.http.routers.pdns.service=pdns"
+ - "traefik.http.routers.pdns.middlewares=pdns-https-redirect"
+ # Router: HTTPS
+ - "traefik.http.routers.pdns-secure.entrypoints=https"
+ - "traefik.http.routers.pdns-secure.rule=Host(`dns.giorgioravera.it`)"
+ - "traefik.http.routers.pdns-secure.tls=true"
+ - "traefik.http.routers.pdns-secure.service=pdns"
+ # Middlewares: Redirect http to https
+ - "traefik.http.middlewares.pdns-https-redirect.redirectscheme.scheme=https"
+ # Services: Loadbalancer
+ - "traefik.http.services.pdns.loadbalancer.server.port=80"
+
+networks:
+ proxy:
+ external: true