version: "3.7" services: app: image: portainer/portainer:1.24.2 command: "-H tcp://tasks.agent:9001 --tlsskipverify" volumes: - "portainer_data:/data" - "/var/run/docker.sock:/var/run/docker.sock" networks: - agent_network - proxy deploy: mode: replicated replicas: 1 update_config: failure_action: rollback placement: constraints: - node.role == manager labels: - "traefik.enable=true" - "traefik.docker.network=proxy" - "traefik.http.services.${STACK_NAME}.loadbalancer.server.port=9000" - "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`${EXTRA_DOMAINS})" - "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure" - "traefik.http.routers.${STACK_NAME}.tls=true" - "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}" - "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect" - "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true" - "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}" - coop-cloud.${STACK_NAME}.app.version=1.23.2-4ae7f143 agent: image: portainer/agent:2.6.1 volumes: - "/var/run/docker.sock:/var/run/docker.sock" - "/var/lib/docker/volumes:/var/lib/docker/volumes" networks: - agent_network deploy: mode: global update_config: failure_action: rollback placement: constraints: - node.role == manager labels: ['coop-cloud.${STACK_NAME}.agent.version=2.1.0-397d3dea'] volumes: portainer_data: networks: proxy: external: true agent_network: driver: overlay attachable: true