Skip to main content

Git server with Forgejo

Your own GitHub for a small team. Repositories, pull requests, issues and CI on a Raspberry Pi in the data centre, reachable from anywhere.

Why Forgejo

Forgejo is a community fork of Gitea, run by a non-profit. It's written in Go, starts in seconds and is happy with 1 GB of RAM. The web interface will feel familiar to anyone who knows GitHub.

docker run -d --name forgejo --restart unless-stopped \
  -p 3000:3000 -p 2222:22 \
  -v /srv/forgejo:/data \
  codeberg.org/forgejo/forgejo:17

The web interface runs on port 3000, and Git over SSH on port 2222 so it doesn't clash with your own SSH. Put Nginx with a Let's Encrypt certificate in front of the web interface.

CI on ARM

Forgejo Actions use the same workflow syntax as GitHub Actions. A runner on the Raspberry Pi builds and tests your code straight on arm64, which is handy if you ship software for ARM boards.