Layer 3 · self-hosting reality check
What it actually takes to self-host Jenkins
The docs say 512 MB. In practice you want 4 GB controller, plus agents. Here is the honest version — real requirements, real monthly cost, what you will be maintaining, and the one thing that catches people out.
Usually reached from GitHub Actions alternatives, where Jenkins is one of the picks.
| RAM — documented minimum | 512 MB |
|---|---|
| RAM — what it really needs | 4 GB controller, plus agents |
| CPU | 2 vCPU controller |
| Disk | Build history grows without limit unless you cap it. 100 GB is not unusual. |
| Monthly cost | $24/mo controller plus agent capacity, against per-minute CI billing that is where the real saving is |
| Setup time | Half a day for the controller, longer to get the pipelines right |
| How you install it | container or package; the setup wizard installs a recommended plugin set |
| Ongoing maintenance | High, and this is the honest cost. Plugin updates break each other, the controller accumulates state, and Jenkins requires an owner in a way modern CI does not. |
| Where it stops scaling | Enormously — it runs CI at companies with thousands of engineers. The controller becomes the bottleneck long before the agents do. |
The thing that catches people out
Plugins are Jenkins's power and its liability — a typical install has 60+ of them, updating independently, and a plugin upgrade taking down all builds is a normal Tuesday. Pin your plugin versions, snapshot JENKINS_HOME before every upgrade, and never update plugins on a Friday. Teams that treat Jenkins as install-and-forget are the ones with a broken CI and nobody who knows why.
When not to self-host Jenkins
You are starting fresh. Jenkins earns its place where you have deep existing pipelines or unusual build requirements; Woodpecker or Forgejo Actions are far less work for a new project.
Every guide here carries this section. A site that only ever tells you to self-host is selling something — the useful answer is sometimes no.
Other Layer 3 self-hosting guides
Common questions
- How much RAM does Jenkins actually need?
- 4 GB controller, plus agents in practice. The documented minimum is 512 MB, which is the figure at which the process starts rather than the figure at which it works under real use. 2 vCPU controller alongside it.
- What does self-hosting Jenkins cost per month?
- $24/mo controller plus agent capacity, against per-minute CI billing that is where the real saving is This is commodity VPS pricing and excludes your time, which is the larger cost for most people — budget for high, and this is the honest cost. Plugin updates break each other, the controller accumulates state, and Jenkins requires an owner in a way modern CI does not.
- How long does it take to set up Jenkins?
- Half a day for the controller, longer to get the pipelines right, via container or package; the setup wizard installs a recommended plugin set.
- When should I NOT self-host Jenkins?
- You are starting fresh. Jenkins earns its place where you have deep existing pipelines or unusual build requirements; Woodpecker or Forgejo Actions are far less work for a new project.
- What is the most common mistake when self-hosting Jenkins?
- Plugins are Jenkins's power and its liability — a typical install has 60+ of them, updating independently, and a plugin upgrade taking down all builds is a normal Tuesday. Pin your plugin versions, snapshot JENKINS_HOME before every upgrade, and never update plugins on a Friday. Teams that treat Jenkins as install-and-forget are the ones with a broken CI and nobody who knows why.