What is Forgejo Runner?
Forgejo Runner is the CI runner for Forgejo Actions. It is a lightweight daemon that connects to your Forgejo instance, picks up queued workflow jobs and executes them on your own infrastructure (using Docker, LXC or the host directly) giving you a fully self-hosted, GitHub Actions-compatible CI/CD pipeline.
β‘ Key Features of Forgejo Runner
π Actions Compatible
Runs workflows using the same syntax and actions ecosystem as GitHub Actions.
π³ Flexible Execution
Execute jobs in Docker containers, LXC, or directly on the host machine.
π Self-hosted
Keep your CI/CD entirely on your own infrastructure with no third-party dependency.
βοΈ Scalable
Register multiple runners with labels to distribute and target workloads.
π― Why Forgejo Runner?
- Own your CI: Run pipelines on hardware you control
- Actions ecosystem: Reuse existing GitHub-style workflow definitions
- Flexible isolation: Docker, LXC or host execution to fit your needs
- Lightweight: A single Go binary that is simple to deploy
π Highlights
- Job Execution: Runs queued Forgejo Actions workflows
- Labels: Target jobs to specific runners
- Container Support: Isolated builds via Docker
- Daemon Mode: Runs continuously as a service
π¦ Installation from deb.griffo.io
Step 1: Add Repository
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt updatesudo apt install extrepo
sudo extrepo enable griffo
sudo apt updateπ There is an always-free mirror. deb-free.griffo.io serves packages free forever, no account, no subscription, at most 2 months behind upstream, security fixes immediately. It currently carries cliamp, Ghostty, lazydocker, Oh My Posh and Zed; Forgejo Runner is not one of them, so the repository above is the only way to get it today, ask and it can be enrolled.
π§© About the extrepo option. extrepo is Debian's own tool for external repositories: it writes the sources file and installs the signing key for you, checking the key against signed metadata first. This repository is registered with it as griffo, and the always-free mirror as griffo-free, so on Debian (bookworm, trixie, forky and sid) the commands above are the whole setup.
extrepo sets up the sources file and the key only, so a subscription's credentials still go in /etc/apt/auth.conf.d/deb.griffo.io.conf. Ubuntu is not covered, because extrepo publishes metadata for Debian suites only: there, use the sudo or root commands.
Step 2: Install forgejo-runner
# Install latest forgejo-runner
sudo apt install forgejo-runner
# Verify installation
forgejo-runner --version# Install latest forgejo-runner
apt install forgejo-runner
# Verify installation
forgejo-runner --versionπ― Basic Usage Examples
# Show version
forgejo-runner --version
# Generate a default config file
forgejo-runner generate-config > config.yaml
# Register the runner with your Forgejo instance
forgejo-runner register --instance https://forgejo.example.com --token <TOKEN>
# Start the runner daemon
forgejo-runner daemonπ Why Choose deb.griffo.io?
- Official Debian: Often months behind, missing latest features
- deb.griffo.io: Latest version within hours of release
- Manual Installation: Manual downloads and PATH setup required
- Our Repository: Pre-built, ready-to-use packages
- β Latest Features: Get newest Forgejo Runner features and improvements immediately
- β No Manual Setup: Pre-built binaries, installed and updated through apt
- β Automatic Updates: Packages updated within hours of upstream releases
- β Proper Dependencies: Correctly packaged with all required libraries
- β Multi-Distribution: Works on Bookworm, Trixie, and Sid
- β Easy Maintenance: Simple apt commands for updates
π¦ Package Build Repository
The Debian packages are automatically built and maintained in this GitHub repository:
- π forgejo-runner-debian - Latest release builds
π Related Packages
Also available from deb.griffo.io:
- Forgejo - Self-hosted lightweight software forge
- Garage - S3-compatible distributed object storage
- Headscale - Self-hosted Tailscale control server
π Support This Project
If this repository saves you time and effort, please consider supporting it!