1 Commits

Author SHA1 Message Date
93d375d6a1 feat: customize limits 2026-02-18 14:10:56 +01:00
3 changed files with 21 additions and 1 deletions

View File

@ -4,5 +4,15 @@ DOMAIN=drone-docker-runner.example.com
LETS_ENCRYPT_ENV=production
DRONE_RPC_HOST=drone.example.com
# Max concurrent pipeline jobs per runner (default 4). Use 1-2 on small hosts (e.g. 2GB RAM).
# DRONE_RUNNER_CAPACITY=4
# Optional memory limits for pipeline containers (bytes). Unset = no limit.
# Example: 629145600 = 600MiB
# DRONE_MEMORY_LIMIT=
# DRONE_MEMORY_SWAP_LIMIT=
# Grace period before SIGKILL on stop (default 10s). For long builds use e.g. 1h.
# DRONE_RUNNER_STOP_GRACE_PERIOD=10s
RPC_SECRET_VERSION=v1

View File

@ -12,3 +12,10 @@
* **Tests**: ?
* **SSO**: ?
<!-- endmetadata -->
## Stability tuning
All tuning options are **optional**; defaults keep the previous behaviour so existing deployments work unchanged.
- **Small hosts (e.g. 2GB RAM):** Use a lower capacity, e.g. `DRONE_RUNNER_CAPACITY=2`, and optionally set `DRONE_MEMORY_LIMIT` (and `DRONE_MEMORY_SWAP_LIMIT`) in bytes for pipeline containers.
- **Long-running builds:** Increase `DRONE_RUNNER_STOP_GRACE_PERIOD` (e.g. `1h`) so pipelines can finish on shutdown.

View File

@ -14,9 +14,12 @@ services:
environment:
- DRONE_RPC_HOST=${DRONE_RPC_HOST}
- DRONE_RPC_PROTO=https
- DRONE_RUNNER_CAPACITY=4
- DRONE_RUNNER_CAPACITY=${DRONE_RUNNER_CAPACITY:-4}
- DRONE_RUNNER_NAME=drone-docker-runner
- DRONE_RUNNER_VOLUMES=/var/run/docker.sock:/var/run/docker.sock
- DRONE_MEMORY_LIMIT=${DRONE_MEMORY_LIMIT:-}
- DRONE_MEMORY_SWAP_LIMIT=${DRONE_MEMORY_SWAP_LIMIT:-}
stop_grace_period: ${DRONE_RUNNER_STOP_GRACE_PERIOD:-10s}
networks:
- proxy
healthcheck: