This is an Alpine-based container hosting the Drone continuous integration and delivery platform.
To secure this service, we suggest a separate reverse proxy server, such as nephatrine/nginx-ssl.
To actually perform tasks, you will need one or more "runners", such as nephatrine/drone-runner.
READ THROUGH THE DRONE LICENSE. This
image is not compiled with the oss tag which means you must meet certain
requirements as laid out in the FAQ. If you
do not or cannot meet those requirements, you need to purchase a license or not
use this version.
WARNING: I have personally migrated to Gitea Actions and so this container is not thoroughly tested anymore. I do suggest you find an alternative as I will not maintain this indefinitely.
drone-ci:2.26.0: Drone 2.26.0
Set the DRONE_USER_CREATE variable to create the initial adminitrative user.
This can be done after initial login at any time to bootstrap the administrative
user. You will need to be an administative user to perform some tasks via the
drone cli, but it is not required for basic usage.
This is the only configuration file you will likely need to be aware of and potentially customize.
/mnt/config/etc/drone-config
This is a bash script that will be sourced by the startup routine to include additional tweaks or setup you would like to perform. Modifications to these files will require a service restart to pull in the changes made.
TZ: Time Zone (i.e.America/New_York)PUID: Mounted File Owner User IDPGID: Mounted File Owner Group IDDRONE_DATABASE_SECRET: Database SecretDRONE_GITEA_SERVER: Gitea ServerDRONE_GITEA_CLIENT_ID: Gitea OAuth2 IDDRONE_GITEA_CLIENT_SECRET: Gitea OAuth2 SecretDRONE_GITHUB_SERVER: Gitea ServerDRONE_GITHUB_CLIENT_ID: Gitea OAuth2 IDDRONE_GITHUB_CLIENT_SECRET: Gitea OAuth2 SecretDRONE_GITLAB_SERVER: Gitlab ServerDRONE_GITLAB_CLIENT_ID: Gitlab OAuth2 IDDRONE_GITLAB_CLIENT_SECRET: Gitlab OAuth2 SecretDRONE_RPC_SECRET: Server-Agent SecretDRONE_SERVER_HOST: External HostnameDRONE_SERVER_PROTO: External ProtocolDRONE_USER_CREATE: Initial Administative User (i.e.username:myuser,admin:true)
services:
drone-ci:
image: nephatrine/drone-ci:latest
container_name: drone-ci
environment:
TZ: America/New_York
PUID: 1000
PGID: 1000
DRONE_SERVER_HOST: drone.example.net
DRONE_SERVER_PROTO: https
DRONE_GITEA_SERVER: https://gitea.example.net"
DRONE_GITEA_CLIENT_ID:
DRONE_GITEA_CLIENT_SECRET:
ports:
- "8080:8080/tcp"
volumes:
- /mnt/containers/drone-ci:/mnt/configdocker run --rm -ti code.nephatrine.net/nephnet/drone-ci:latest /bin/bash