--- version: "3.8" services: app: image: "drone/drone-runner-docker:1.8.3" volumes: - "/var/run/docker.sock:/var/run/docker.sock" configs: - source: drone_runner_env target: .env secrets: - rpc_secret environment: - DRONE_RPC_HOST=${DRONE_RPC_HOST} - DRONE_RPC_PROTO=https - DRONE_RUNNER_CAPACITY=4 - DRONE_RUNNER_NAME=drone-docker-runner - DRONE_RUNNER_VOLUMES=/var/run/docker.sock:/var/run/docker.sock networks: - proxy healthcheck: test: ["CMD", "wget", "-qO", "-", "http://localhost:3000/healthz"] interval: 10s timeout: 10s retries: 10 start_period: 10s deploy: update_config: failure_action: rollback order: start-first labels: - "traefik.enable=true" - "traefik.http.routers.drone-docker-runner.rule=Host(`${DOMAIN}`)" - "traefik.http.routers.drone-docker-runner.entrypoints=web-secure" - "traefik.http.services.drone-docker-runner.loadbalancer.server.port=3000" - "traefik.http.routers.drone-docker-runner.tls.certresolver=${LETS_ENCRYPT_ENV}" - "coop-cloud.${STACK_NAME}.version=1.1.2+1.8.3" networks: proxy: external: true configs: drone_runner_env: name: ${STACK_NAME}_env_${ENV_VERSION} file: env.tmpl template_driver: golang secrets: rpc_secret: name: ${STACK_NAME}_rpc_secret_${RPC_SECRET_VERSION} external: true volumes: data: