version: '3.2' services: agent: image: portainer/agent:2.16.1 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-ce:2.16.1 command: -H tcp://tasks.agent:9001 --tlsskipverify ports: - "9443:9443" - "9000:9000" - "8000:8000" volumes: - /srv/portainer/data:/data networks: - traefik_public deploy: mode: replicated replicas: 1 labels: - "traefik.docker.network=traefik_public" - "traefik.http.routers.portainer.rule=Host(`portainer.genius.ceo`)" - "traefik.http.routers.portainer.entrypoints=https" - "traefik.http.routers.portainer.tls=true" - "traefik.http.routers.portainer.tls.certresolver=main" - "traefik.http.services.portainer.loadbalancer.server.port=9000" placement: constraints: [node.role == manager] networks: traefik_public: external: true