version: '3.8' services: portainer: image: portainer/portainer-ce:latest container_name: portainer restart: always ports: - "8000:8000" # Edge agent port - "9000:9000" # HTTP web UI - "9443:9443" # HTTPS web UI (optional) volumes: - /var/run/docker.sock:/var/run/docker.sock:ro - portainer_data:/data environment: - TZ=America/New_York networks: - portainer_net labels: - "traefik.enable=true" - "traefik.http.routers.portainer.rule=Host(`portainer.nb.bobbysh.me`)" - "traefik.http.routers.portainer.entrypoints=websecure" - "traefik.http.routers.portainer.tls=true" - "traefik.http.services.portainer.loadbalancer.server.port=9000" # Optional: disable Traefik if not using it yet # - "traefik.enable=false" volumes: portainer_data: driver: local networks: portainer_net: driver: bridge attachable: true