Skip to content

Docker Homelab

Traefik command arg conf for auto tls and my defaults

command:
  # Dashboard & logging
  - "--api.insecure=false"
  - "--api.dashboard=true"
  - "--log.level=INFO"

  # Docker provider
  - "--providers.docker=true"
  - "--providers.docker.exposedbydefault=false"
  - "--providers.docker.network=homelab"

  # HTTP & HTTPS entrypoints
  - "--entryPoints.web.address=:80"
  - "--entryPoints.websecure.address=:443"

  # Enable TLS on HTTPS
  - "--entryPoints.websecure.http.tls=true"

  # Redirect HTTP → HTTPS
  - "--entryPoints.web.http.redirections.entryPoint.to=websecure"
  - "--entryPoints.web.http.redirections.entryPoint.scheme=https"

  # Let's Encrypt / ACME
  - "--certificatesresolvers.le.acme.email=${DOMAIN_EMAIL}"
  - "--certificatesresolvers.le.acme.storage=/letsencrypt/acme.json"
  - "--certificatesresolvers.le.acme.httpchallenge.entrypoint=web"

Label template for traefik and homepage autodiscovery

# Traefik labels
- "traefik.enable=true"
- "traefik.http.routers.<SERVICE>.rule=Host(`<SERVICE>.${DOMAIN}`)"
- "traefik.http.routers.<SERVICE>.entrypoints=web,websecure"
- "traefik.http.routers.<SERVICE>.tls=true"
- "traefik.http.routers.<SERVICE>.tls.certresolver=le"
- "traefik.http.services.<SERVICE>.loadbalancer.server.port=<PORT>"

# Homepage labels
- "homepage.group=<GROUP>"
- "homepage.name=<NAME>"
- "homepage.icon=<ICON>"
- "homepage.href=https://<SERVICE>.$DOMAIN/"
- "homepage.description=<DESCRIPTION>"