SkillsApr 16, 2026·3 min read

Drone — Container-Native Continuous Integration Platform

A self-service CI/CD platform that uses containers for every pipeline step. Drone pipelines are defined in simple YAML and run in isolated Docker containers, making builds reproducible and portable.

Agent ready

Safe staging for this asset

This asset is staged first. The copied prompt tells the agent to inspect the staged files and ask before activating scripts, MCP config, or global config.

Stage only · 29/100Policy: stage
Agent surface
Any MCP/CLI agent
Kind
Skill
Install
Stage only
Trust
Trust: Established
Entrypoint
Drone CI
Safe staging command
npx -y tokrepo@latest install 3c27cec9-398f-11f1-9bc6-00163e2b0d79 --target codex

Stages files first; activation requires review of the staged README and plan.

TL;DR
Drone runs CI/CD pipelines where every step executes in an isolated Docker container from simple YAML config.
§01

What it is

Drone is a container-native CI/CD platform that runs every pipeline step inside a Docker container. Pipelines are defined in .drone.yml files, making builds reproducible and portable across environments.

Drone targets small to mid-sized teams who want a lightweight CI/CD solution without the complexity of Jenkins or the cost of hosted platforms. It integrates with GitHub, GitLab, Gitea, and Bitbucket.

§02

How it saves time or tokens

Drone pipelines are simpler than Jenkins or GitHub Actions equivalents. Each step specifies a Docker image and commands. No plugin ecosystem to learn -- any Docker image is a valid step. The YAML syntax is minimal and builds are reproducible since every step runs in a fresh container.

§03

How to use

  1. Run the Drone server with Docker:
docker run \
  --volume=/var/run/docker.sock:/var/run/docker.sock \
  --env=DRONE_GITHUB_CLIENT_ID=your-id \
  --env=DRONE_GITHUB_CLIENT_SECRET=your-secret \
  --env=DRONE_RPC_SECRET=shared-secret \
  --env=DRONE_SERVER_HOST=drone.example.com \
  --env=DRONE_SERVER_PROTO=https \
  --publish=80:80 \
  drone/drone:2
  1. Run a Drone runner on the same or separate host.
  1. Add a .drone.yml to your repository and activate it in the Drone UI.
§04

Example

# .drone.yml
kind: pipeline
type: docker
name: build-and-test

steps:
  - name: test
    image: golang:1.23
    commands:
      - go test ./...

  - name: build
    image: golang:1.23
    commands:
      - go build -o app .

  - name: docker
    image: plugins/docker
    settings:
      repo: myregistry/myapp
      tags: latest
§05

Related on TokRepo

§06

Common pitfalls

  • Drone requires access to the Docker socket. Running it in Kubernetes requires DinD (Docker-in-Docker) or an alternative executor.
  • The open-source Drone (Community Edition) has limitations on concurrent builds. Check licensing for team usage.
  • Pipeline secrets must be configured through the Drone UI or API. They are not stored in the .drone.yml file.

Frequently Asked Questions

What Git providers does Drone support?+

Drone integrates with GitHub, GitLab, Gitea, and Bitbucket. Each provider requires OAuth credentials configured on the Drone server for webhook and API access.

How does Drone differ from GitHub Actions?+

Drone is self-hosted and runs every step in Docker containers. GitHub Actions is hosted by GitHub with a mix of container and VM-based runners. Drone gives you full control over infrastructure and build isolation.

Can Drone run on Kubernetes?+

Yes. Drone provides a Kubernetes runner that schedules pipeline steps as Kubernetes pods. This eliminates the need for Docker-in-Docker and integrates with existing cluster resources.

Does Drone support parallel steps?+

Yes. Steps without dependencies run in parallel by default. You can add depends_on to control execution order when steps need sequential execution.

What is the Drone plugin ecosystem?+

Drone plugins are Docker images that perform specific tasks like publishing Docker images, sending Slack notifications, or deploying to cloud providers. Any Docker image can be used as a step -- no special plugin format required.

Citations (3)

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets