DroneOn the roadmap

A managed Drone runner with one fresh VM per build

Drone hands pipelines to separate runners, and the Docker runner host decides how fast your builds go. cirunner.dev plans to run Drone runners on fresh, larger VMs, one per build.

A Drone runner is the daemon that executes pipelines for a Drone server. Most installs use the Drone Docker runner, drone/drone-runner-docker, which runs each step in its own container on one host; the exec runner covers jobs that need the bare machine. You host both the server and the runners. When a C++, Rust or Android build lands on a Docker runner sized for small jobs, the whole team waits on that one host.

Status: Drone is on the cirunner.dev roadmap. Our early access starts with GitHub Actions and GitLab CI. This page describes how Drone support will work.

Where Drone CI runners slow down

  • DRONE_RUNNER_CAPACITY splits one host between parallel pipelines, so a bigger capacity means less CPU per build.
  • The Docker runner gives each step a fresh container, but the host persists. Images, volumes and leftovers from earlier builds pile up until the disk fills.
  • arm64 pipelines need a runner on arm64 hardware, and Drone routes by platform, so you maintain a second pool.
  • The drone/autoscaler reuses VMs across builds, so it trims idle cost without giving you one clean VM per build.

Running Drone runners yourself in 2026

The Drone CI runners guide covers setup in detail. Things to know before you add capacity:

  • Each runner needs DRONE_RPC_HOST, DRONE_RPC_PROTO and DRONE_RPC_SECRET. The server and all runners share the RPC secret, and anyone holding it can register a runner and receive your pipelines with their secrets.
  • Separate runners need the Drone Enterprise Edition. The self-compiled Open Source Edition lacks distributed runners, Kubernetes support and autoscaling. Drone's docs describe the Enterprise Edition as free for organizations under US$1 million in annual gross revenue.
  • Drone's docs mark the Kubernetes runner as Beta and community-supported.
  • Harness, which acquired Drone, focuses new work on Harness Open Source and keeps Drone's code on a branch of that repository.

Woodpecker CI is the community fork of Drone 0.8, under the Apache 2.0 license, with its own agent model. If you are planning a new fleet, compare it first; our Woodpecker CI agents page covers how managed agents will work there.

How a managed Drone Docker runner will work

  1. You give us your server's RPC host and secret. That secret grants access to all your pipelines, so treat it as a trust decision and rotate it on the server and your other runners if you stop using the service.
  2. You choose the machine in the configurator: more cores and memory than your current runner host, x86 or ARM, a GPU if you need one.
  3. We start Docker runners with the platform and DRONE_RUNNER_LABELS you pick. Your .drone.yml routes to them with platform and node, for example node: { pool: big }.
  4. Each build runs on a fresh VM that we destroy afterwards. A build cache persists between builds.

Your Drone server and pipeline files stay as they are. Billing is per compute minute.

Drone runner options compared

One Docker runner hostdrone/autoscaler poolcirunner.dev (planned)
Machine sizeFixedOne instance type per poolBigger machines, x86 or ARM, optional GPU
IsolationShared host between buildsVMs reused across buildsFresh VM per build
ScalingCapacity settingPool min and maxFollows your queue
UpkeepPatching, pruningPatching, pruning, autoscaler serviceNone on your side
Cost modelVM around the clockCloud bill, idle floorPer compute minute

Who it is for

Good fit:

  • Teams with an established Drone server and compile-heavy pipelines that outgrew the runner host.
  • Teams that want arm64 or GPU pipelines without a second runner pool to maintain.

Not a fit:

  • Pipelines that finish in a few minutes on the Docker runner you have.
  • Exec runner jobs tied to a specific machine, such as hardware tests or a macOS GUI session.
  • Teams on the Open Source Edition, which cannot use separate runners.

FAQ

Is there a managed Drone CI runner?

cirunner.dev has managed Drone runners on its roadmap and does not run them yet. Vote for them on the early-access form. Until then, the guide shows how to run the Docker runner and the autoscaler yourself.

How do I install the Drone Docker runner?

Run the drone/drone-runner-docker image with the host's Docker socket mounted and the three DRONE_RPC_* variables set. Check docker logs for successfully pinged the remote server.

Is Drone CI still maintained?

Harness keeps Drone's code on a branch of the harness/harness repository and puts new development into Harness Open Source. Check recent commits before you start a new deployment.

Should I switch from Drone to Woodpecker?

Consider it for a new setup. Woodpecker forked from Drone 0.8, stays under Apache 2.0 and keeps a similar YAML format, though you will need to port .drone.yml files. Managed Woodpecker agents are on our roadmap too.

Vote for managed Drone runners

Drone is on our roadmap. Vote for it on the early-access form, and tell us whether you are also looking at Woodpecker.

Vote for Drone runners