---
services:
  traefik:
    image: docker.io/library/traefik:latest
    container_name: traefik
    ports:
      - 80:80
      - 443:443
      # --> (Optional) Enable Dashboard, don't do in production
      # - 8080:8080
      # <--
    volumes:
      - /run/docker.sock:/run/docker.sock:ro
      - ./config/:/etc/traefik/:ro
      - ./certs/:/var/traefik/certs/:rw
    environment:
      - CF_DNS_API_TOKEN=${CF_DNS_API_TOKEN}
    networks:
      - traefik-network
    restart: unless-stopped

networks:
  traefik-network:
    external: true  # <-- (Optional) Change this to false if you want to create a new network