version: "3" services: agent: image: portainer/agent volumes: - /var/run/docker.sock:/var/run/docker.sock - /var/lib/docker/volumes:/var/lib/docker/volumes networks: - traefik-public deploy: mode: global placement: constraints: [node.platform.os == linux] portainer: image: portainer/portainer command: -H tcp://tasks.agent:9001 --tlsskipverify volumes: - /var/run/docker.sock:/var/run/docker.sock - portainer_data:/data networks: - traefik-public deploy: mode: replicated replicas: 1 placement: constraints: [node.role == manager] labels: - "traefik.enable=true" - "traefik.http.routers.portainer.rule=Host(`portainer.trustai.uk`)" - "traefik.http.routers.portainer.entrypoints=web" - "traefik.http.services.portainer.loadbalancer.server.port=9000" # TLS - "traefik.http.routers.portainers.rule=Host(`portainer.trustai.uk`)" - "traefik.http.routers.portainers.entrypoints=websecure" - "traefik.http.routers.portainers.tls.certresolver=myhttpchallenge" # Redirect - "traefik.http.routers.portainer.middlewares=https_redirect" - "traefik.http.middlewares.https_redirect.redirectscheme.scheme=https" volumes: portainer_data: networks: traefik-public: external: true