Self-service Continuous Delivery platform
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

54 lines
1.7 KiB

version: "3.8"
services:
app:
image: "drone/drone:1.10.1"
volumes:
- "data:/data"
configs:
- source: drone_env
target: .env
environment:
- DRONE_GIT_ALWAYS_AUTH=true
- DRONE_JSONNET_ENABLED=true
- DRONE_SERVER_HOST=${DOMAIN}
- DRONE_SERVER_PORT=:${PORT:-8042}
- DRONE_SERVER_PROTO=https
- DRONE_USER_CREATE=${DRONE_USER_CREATE}
networks:
- proxy
secrets:
- rpc_secret
healthcheck:
test: ["CMD", "wget", "-qO", "-", "http://localhost:8042/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.services.${STACK_NAME}.loadbalancer.server.port=${PORT:-8042}"
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`${EXTRA_DOMAINS})"
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
- "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.10.1-9f95ae97
volumes:
data:
configs:
drone_env:
name: ${STACK_NAME}_drone_env_${DRONE_ENV_VERSION}
file: drone.env.tmpl
template_driver: golang
secrets:
rpc_secret:
name: ${STACK_NAME}_rpc_secret_${RPC_SECRET_VERSION}
external: true
networks:
proxy:
external: true