.. | ||
Dockerfile | ||
fly.toml | ||
README.md |
Drone, the builder for Forgejo
This deploys Drone.io, CI builder for Forgejo (was Gitea).
Installation
- Clone this repository
fly launch
, follow the prompts- Select
n
when it asks if you want to deploy - Setup the admin user account:
fly secrets set "DRONE_USER_CREATE=username:greg,machine:false,admin:true,token:=$(openssl rand -hex 16)"
- Check that the user filter
DRONE_USER_FILTER = "greg"
matches your username above. - Also consider setting the repository filter if needed
- Generate, and store securely, you secrets:
fly secrets set "DRONE_RPC_SECRET=$(openssl rand -hex 16)"
- storage you'll need to add two more secrets:
fly secrets set \ "DRONE_GITEA_CLIENT_ID=[redacted]" \ "DRONE_GITEA_CLIENT_SECRET=[redacted]"
- Deploy,
fly deploy --remote-only
- Setup DNS with your registrar, you must have either CNAME or A/AAAA records set. See: https://fly.io/docs/app-guides/custom-domains-with-fly/
- Create certificate for Fly's automatic TLS termination.
fly certs create build.example.com
Final Step
- Delete the Docker Engine from your local system.
- You probably want to scale your remote Daemon:
fly scale vm dedicated-cpu-2x
andfly scale memory 2048
docker run --detach \
--volume=/var/run/docker.sock:/var/run/docker.sock \
--env=DRONE_RPC_PROTO=https \
--env=DRONE_RPC_HOST=build.burd.me \
--env=DRONE_RPC_SECRET=70619c6241d757e8935c9a7d \
--env=DRONE_RUNNER_CAPACITY=2 \
--env=DRONE_RUNNER_NAME=my-laptop-runner \
--publish=3000:3000 \
--name=runner \
drone/drone-runner-docker:1
--restart=always \