version: "3.8" services: traefik: image: "traefik:v2.9" container_name: "traefik" networks: - proxy command: - "--providers.docker=true" - "--providers.docker.exposedbydefault=false" - "--api.insecure=true" - "--entrypoints.web.address=:80" - "--entrypoints.websecure.address=:443" - "--certificatesresolvers.le.acme.httpchallenge=true" - "--certificatesresolvers.le.acme.httpchallenge.entrypoint=web" - "--certificatesresolvers.le.acme.email=axpwpi@gmail.com" - "--certificatesresolvers.le.acme.storage=/letsencrypt/acme.json" - "--entrypoints.web.http.redirections.entrypoint.to=websecure" - "--entrypoints.web.http.redirections.entrypoint.scheme=https" ports: - "80:80" - "443:443" volumes: - "/var/run/docker.sock:/var/run/docker.sock:ro" - "/traefik:/letsencrypt" labels: - traefik.enable=true - traefik.http.routers.traefik.rule=Host(`traefik.axpdsp.org`) - traefik.http.routers.traefik.tls.certresolver=le - traefik.http.services.traefik.loadbalancer.server.port=8080 restart: always certdumper: image: humenius/traefik-certs-dumper:latest volumes: - /traefik:/traefik:ro - /certs:/output:rw - /var/run/docker.sock:/var/run/docker.sock:ro environment: - CERTIFICATE_FILE_NAME=fullchain - PRIVATE_KEY_FILE_NAME=privkey portainer: image: portainer/portainer container_name: portainer restart: unless-stopped networks: - proxy volumes: - portainer:/data - /var/run/docker.sock:/var/run/docker.sock labels: - traefik.enable=true - traefik.http.routers.portainer.rule=Host(`portainer.axpdsp.org`) - traefik.http.routers.portainer.tls.certresolver=le - traefik.http.services.portainer.loadbalancer.server.port=9000 homepage: image: ghcr.io/benphelps/homepage:latest container_name: homepage restart: unless-stopped networks: - proxy volumes: - homepage:/app/config - /var/run/docker.sock:/var/run/docker.sock:ro labels: - traefik.enable=true - traefik.http.routers.homepage.rule=Host(`dashboard.axpdsp.org`) - traefik.http.routers.homepage.tls.certresolver=le - traefik.http.routers.homepage.entrypoints=websecure uptime-kuma: image: louislam/uptime-kuma:1 container_name: uptime-kuma networks: - proxy volumes: - uptime-kuma:/app/data - /var/run/docker.sock:/var/run/docker.sock restart: always labels: - traefik.enable=true - traefik.http.routers.uptime.rule=Host(`uptime.axpdsp.org`) - traefik.http.routers.uptime.tls.certresolver=le - traefik.http.routers.uptime.entrypoints=websecure - traefik.http.services.uptime.loadbalancer.server.port=3001 watchtower: image: containrrr/watchtower restart: unless-stopped environment: - WATCHTOWER_POLL_INTERVAL=3600 volumes: - /var/run/docker.sock:/var/run/docker.sock networks: proxy: external: true name: proxy volumes: homepage: portainer: uptime-kuma: