I'm trying to setup pihole's webui behind traefik. The pihole service showed up in the dashboard when using traefik 2.1.1 but would time out when trying to access it. I switched to 2.6 and it doesn't show up in the dashboard at all. I'm getting the following errors.
level=error msg="Error matching constraints expression: 1:7: expected operand, found 'EOF'" providerName=docker container=pihole-stack-pihole-urbp3fjrr81xadi4groowyiui
and
level=error msg="Error matching constraints expression: unsupported *ast.Ident" container=pihole-stack-pihole-14dkor44cewvfeoahdieourr5 providerName=docker
I can't figure out where the indent or the EOF are coming from. I've tried changing the defaultRule and constraints settings but that didn't change anything in the way of errors. I also tried quite a few versions of the flags in the pihole compose. I assume I'm doing something wrong. Can anyone point me in the right direction?
Thanks
traefik compose
version: "3.9"
services:
traefik:
image: traefik:v2.6
ports:
- "80:80"
- "8080:8080"
networks:
- traefik-net
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./traefik-config:/etc/traefik
deploy:
placement:
constraints:
- node.role == manager
restart: unless-stopped
networks:
traefik-net:
external: true
name: traefik-net
traefik config
entryPoints:
web:
address: :80
web-secure:
address: :443
providers:
docker:
endpoint: unix:///var/run/docker.sock
watch: true
exposedByDefault: false
swarmMode: true
api:
dashboard: true
insecure: true
pihole compose
version: "3.9"
volumes:
etc-pihole:
etc-dnsmasqd:
services:
pihole:
image: local/pihole:special1
networks:
- traefik-net
ports:
- "53:53/tcp"
- "53:53/udp"
environment:
TZ: "America/New_York"
PIHOLE_DNS_: 1.1.1.1
volumes:
- "etc-pihole:/etc/pihole"
- "etc-dnsmasqd:/etc/dnsmasq.d"
restart: unless-stopped
deploy:
labels:
- traefik.enable=true
- traefik.http.routers.pihole.rule=Host(`pihole1.example.com`)
- traefik.http.services.pihole.loadbalancer.server.port=80
networks:
traefik-net:
external: true
name: traefik-net