GitLab logo
DevOps & Monitoring

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 30 days, billed by the hour, exclusive of 18% GST.

4 vCPU
8 GB
80 GB
5 TB

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.

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

Recommended server

A starting point for GitLab, not a hard floor — size it on the sliders.

Memory8 GB. The documented 4 GB minimum leaves nothing for actually using it
CPU4 vCPU
Storage80 GB and upward — repositories, artefacts and registry images all grow
Operating systemUbuntu 22.04 LTS, which the omnibus package targets

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.

It is your server. GitLab is installed directly on your VPS or VDS, not inside a container we manage. You get root over SSH, you can install anything alongside it, change its configuration, or remove it entirely. We do not hold a key to it.

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

A VPS running self-managed GitLab, with repositories, pipelines and the registry on a server you control.

Deploy GitLab on your own server

Root access, your choice of size, and no container between you and the application.