version: "3.9" services: drone-server: image: esinio/drone:v2.5.0 env_file: - ./.env environment: - "TZ=Asia/Shanghai" - "DRONE_GITEA_CLIENT_ID=${DRONE_GITEA_CLIENT_ID}" - "DRONE_GITEA_CLIENT_SECRET=${DRONE_GITEA_CLIENT_SECRET}" - "DRONE_GITEA_SERVER=${DRONE_GITEA_SERVER}" - "DRONE_RPC_SECRET=${DRONE_RPC_SECRET}" - "DRONE_SERVER_HOST=${DRONE_SERVER_HOST}" - "DRONE_SERVER_PROTO=${DRONE_SERVER_PROTO}" - "DRONE_DATABASE_DRIVER=${DRONE_DATABASE_DRIVER}" - "DRONE_DATABASE_DATASOURCE=${DRONE_DATABASE_DATASOURCE}" - "DRONE_DATABASE_SECRET=${DRONE_DATABASE_SECRET}" - "DRONE_USER_CREATE=${DRONE_USER_CREATE}" - "DRONE_USER_FILTER=${DRONE_USER_FILTER}" - "DRONE_LOGS_DEBUG=${DRONE_LOGS_DEBUG}" volumes: - "./data:/data" labels: - "traefik.enable=true" - "traefik.http.routers.dronesrv.rule=Host(`${DRONE_SERVER_HOST}`)" - "traefik.http.routers.dronesrv.entrypoints=websecure" - "traefik.http.routers.dronesrv.tls=true" - "traefik.http.routers.dronesrv.middlewares=dronesrv-mw" - "traefik.http.middlewares.dronesrv-mw.compress=true" - "traefik.http.middlewares.dronesrv-mw.compress.excludedcontenttypes=text/event-stream" - "traefik.http.services.dronesrv.loadbalancer.server.port=80" external_links: - postgresql networks: - traefik - database drone-runner-docker: image: drone/drone-runner-docker:1 environment: - "DRONE_RPC_HOST=${DRONE_SERVER_HOST}" - "DRONE_RPC_PROTO=${DRONE_SERVER_PROTO}" - "DRONE_RPC_SECRET=${DRONE_RPC_SECRET}" - "DRONE_RUNNER_CAPACITY=${DRONE_RUNNER_CAPACITY}" - "DRONE_RUNNER_NAME=${DRONE_RUNNER_DOCKER_NAME}" - "DRONE_UI_USERNAME=${DRONE_UI_USERNAME}" - "DRONE_UI_PASSWORD=${DRONE_UI_PASSWORD}" - "DRONE_DEBUG=true" - "DRONE_TRACE=true" - "DRONE_RPC_DUMP_HTTP=true" - "DRONE_RPC_DUMP_HTTP_BODY=true" labels: - "traefik.enable=true" - "traefik.http.routers.drone-runner-docker.rule=Host(`${DRONE_RUNNER_DOCKER_HOST}`)" - "traefik.http.routers.drone-runner-docker.entrypoints=websecure" - "traefik.http.routers.drone-runner-docker.tls=true" volumes: - /var/run/docker.sock:/var/run/docker.sock networks: - traefik networks: traefik: external: true database: external: true