Easiest Git Hosting & Forges to self-host

8 git hosting & forges apps that are easy to get running, ranked by verified deploy effort, project health, and popularity. 1 have a verified ≈5-minute Docker setup.

The shortlist at a glance

AppDeploy effortDifficultyMin. RAMLicense★ Stars
Gitea≈5-minute setupEasy256 MBMIT58,484
GogsUnder-an-hour setupEasy128 MBMIT47,868
GitBucketUnder-an-hour setupEasy512 MBApache-2.09,402
Soft ServeUnder-an-hour setupEasy64 MBMIT7,255
SourcebotUnder-an-hour setupEasy1,024 MBMIT3,991
Gitea MirrorUnder-an-hour setupEasy256 MBMIT1,487
ForgejoUnder-an-hour setupEasy256 MBGPL-3.05,000
GitPrepRead-the-docs projectEasy128 MBMIT934

Last reviewed Oct 11, 2026 · 669 words

Gitea is the easiest Git forge to self-host by verified evidence, and Forgejo is just as easy in practice. Gitea leads this ranking because its upstream compose file is verified as a single-container, ≈5-minute deploy; Forgejo, its community fork, has the same footprint (256 MB by the directory's estimate, one Go binary, SQLite out of the box) and sits at "under an hour" only because its compose file has not been verified yet. For a beginner, either one is the right first install, and the buyer's guide explains why most people should lean Forgejo.

Not everything here is a forge

Half this list solves a different problem, and installing the wrong one is the classic beginner mistake:

PickWhat it isRAM estimatePick it when
Gitea / ForgejoFull forge with issues, PRs, CI256 MBYou want a self-hosted GitHub
GogsThe forge Gitea forked from128 MBYou want the smallest web forge
Soft ServeGit over SSH with a terminal UI64 MBYou never need a web page
Gitea MirrorMirrors GitHub repos into Gitea256 MBYou want offline copies of GitHub
SourcebotCode search across many repos1 GBYou need search, not hosting

Gogs is lighter still, and the catalogue's fair summary is that its feature development is slower than the forks; the Gitea vs Gogs comparison shows the gap. Soft Serve is a charming option for a single developer who lives in the terminal. Gitea Mirror is the best second install on this page: point it at your GitHub account and it keeps one-way copies on a schedule, which is cheap insurance.

What "easy" still leaves you to do

The container starts in minutes; four decisions follow. Persistence: everything lives in the container's /data volume, repositories and the SQLite database together, so mount it on storage you trust. Accounts: the first user you register becomes the administrator, and open registration is on until you turn it off, so register yourself, then disable sign-ups before you share the URL. Reverse proxy: put the web UI behind HTTPS with a real hostname and set that hostname in the forge's config, or clone URLs and email links will point at the container's internal address. Backups: Gitea and Forgejo include a dump command that bundles repositories, database and config into one archive; schedule it and copy the file off the machine. The SSH port decision is the fifth, and the buyer's guide covers that trap.

How much RAM does a self-hosted Git server need?

The forge itself idles comfortably in the 256 MB estimate for a personal or small-team instance. What grows the budget is CI. Gitea Actions and Forgejo Actions run jobs on separate runners, and a runner building containers will want far more memory than the forge it reports to. As a rough rule, budget 1 GB for the forge plus a light runner, and 2 GB or more if your builds compile anything substantial.

When to step up

Step up from a lightweight forge when a team needs built-in security scanning or wants CI, registry and planning in one integrated platform rather than a forge plus runners. GitLab CE is that platform, rated Hard with a 4 GB minimum; the Gitea vs GitLab CE comparison prices the jump. OneDev (Medium, 1 GB, Java) is a middle step with CI built into the server. Neither is a beginner install, and most solo developers never need either.

What I'd do

Forgejo or Gitea in one container with /data on a mounted volume, your admin account created, registration closed, HTTPS in front, and a nightly dump copied elsewhere. If you chose Gitea, add Gitea Mirror for your GitHub repositories the same week. Leave CI for the second month, once you know how much RAM your builds really take.

Keep exploring