GitLab Hosting on Your Own VPS
Repositories, CI/CD and a container registry on your own server.
Size a server for GitLab
Every stop is a real configuration you can deploy. Priced per month and billed monthly, exclusive of 18% GST.
What GitLab is
GitLab is a complete DevOps platform: Git hosting, merge requests, issue tracking, CI/CD pipelines and a container registry in one application. Self-managed GitLab Community Edition is free and runs on your own hardware.
It is genuinely heavy, and this is where self-hosting most often goes wrong. A GitLab installation is not one process — it is Puma, Sidekiq, Gitaly, PostgreSQL, Redis, NGINX and several supporting services, all started by omnibus. GitLab documents 4 GB as a minimum and it means it; installations on 2 GB fail during the first reconfigure, not later under load.
CI runners are a separate decision and a good one to get right. Running runners on the same machine as GitLab means a heavy pipeline starves the web interface — the UI becomes unusable exactly when a build is running. Put runners on their own VPS and the two stop competing.
“Used by more than 100,000 organizations, GitLab is the most popular solution to manage Git repositories on-premises”
Why run GitLab on a VPS
Memory that meets GitLab's real requirement rather than its aspirational one.
Root access, which the omnibus package requires to configure its services.
Runners on a separate VPS over a private network, so builds do not starve the UI.
Disk that can be extended as repositories, artefacts and registry images accumulate.
GitLab features
Git hosting with merge requests and code review
CI/CD pipelines with a YAML definition
Container registry
Issue tracking, boards and milestones
Package registries for several ecosystems
Wiki and snippets
LDAP and OAuth authentication
GitLab hosting requirements
The recommended starting point for GitLab, not a hard floor — size it on the sliders.
| Memory | 8 GB. The documented 4 GB minimum leaves nothing for actually using it |
|---|---|
| CPU | 4 vCPU |
| Storage | 80 GB and upward — repositories, artefacts and registry images all grow |
| Operating system | Ubuntu 22.04 LTS, which the omnibus package targets |
| Installs on | Ubuntu 24.04 LTS, Ubuntu 22.04 LTS, Debian 12 Bookworm, AlmaLinux 9, AlmaLinux 8, Rocky Linux 9, Rocky Linux 8 |
| Ready in | About 15 minutes |
| Smallest server | 2 vCPU · 4 GB memory · 40 GB disk |
How deployment works
GitLab is installed from the omnibus package, which brings its own PostgreSQL, Redis, Gitaly and web server and configures them together. Expect the first reconfigure to take several minutes and to need the memory headroom. CI runners are best registered on a separate VPS so pipelines and the web interface are not competing for the same cores.
What people run it for
Private source hosting
Code on infrastructure you own, for policy or contractual reasons.
Self-hosted CI/CD
Pipelines without per-minute billing, on runners you size.
Container registry
Images stored beside the code that builds them.
Leaving per-seat pricing
Community Edition has no per-user licence.
GitLab hosting questions
Related applications
Deploy GitLab on your own server
Root access, your choice of size, and no container between you and the application.