Whenever I try accessing the dashboard either via HTTP or HTTPS (either via Google Chrome or curl) I'm met with a 404 page. I've searched through multiple other community threads/GitHub issues with no result whatsoever (Please bear in mind I'm quite new to Traefik). The docker-compose section (focusing on traefik service for brevity purposes) is the following:
version: "3.8"
services:
proxy:
container_name: proxy
image: traefik:v2.10
ports:
- "80:80"
- "443:443"
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- /var/log:/var/log
- network-certificates:/certificates
environment:
DUCKDNS_TOKEN: <TOKEN>
command:
- --log.level=DEBUG
# Staging certificate resolver
- --certificatesresolvers.le.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory
# Enable Docker in Traefik, so that it reads labels from Docker services
- --providers.docker
# Do not expose all Docker services, only the ones explicitly exposed
- --providers.docker.exposedByDefault=false
# Create an entrypoint "http" listening on port 80
- --entrypoints.http.address=: 80
# Create an entrypoint "https" listening on port 443
- --entrypoints.https.address=: 443
# Create the certificate resolver "le" for Let's Encrypt, uses the environment variable EMAIL
- --certificatesresolvers.le.acme.email=<EMAIL>
# Store the Let's Encrypt certificates in the mounted volume
- --certificatesresolvers.le.acme.storage=/certificates/acme.json
# Use the DNS Challenge for Let's Encrypt
- --certificatesresolvers.le.acme.dnschallenge=true
- --certificatesresolvers.le.acme.dnschallenge.provider=duckdns
# Enable the access log, with HTTP requests
- --accesslog=true
- --accesslog.filepath=/var/log/traefik-access.log
# Enable the Traefik log, for configurations and errors
- --log
# Enable the Dashboard and API
- --api=true
- --api.dashboard=true
networks:
- default
- network
healthcheck:
test: [
"CMD",
"traefik",
"healthcheck"
]
interval: 30s
timeout: 3s
retries: 30
labels:
# Enable Traefik for this service, to make it available in the public network
- traefik.enable=true
# Use the network network (declared below)
- traefik.docker.network=network
# Dashboard
- "traefik.http.routers.traefik.rule=Host(`dashboard.<SUBDOMAIN>.duckdns.org`)"
- "traefik.http.routers.traefik.service=api@internal"
- "traefik.http.services.api@internal.loadbalancer.server.port=8080"
- "traefik.http.routers.traefik.tls.certresolver=le"
- "traefik.http.routers.traefik.entrypoints=https"
# global redirect to https
- "traefik.http.routers.http-catchall.rule=hostregexp(`{host:.+}`)"
- "traefik.http.routers.http-catchall.entrypoints=http"
- "traefik.http.routers.http-catchall.middlewares=redirect-to-https"
# middleware redirect
- "traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https"
volumes:
network-certificates:
networks:
network:
external: true