Member-only story
Create a Self-Hosted GitLab Server From Your Linux PC
Because what else would you do with old hardware?

Do you have an old dusty computer standing around in the corner just waiting for someone to boot it up and do something cool with it already?
Well, then let’s make good use of this old hardware by building our own completely self-hosted GitLab instance and making it remote-controllable from anywhere!
Contents
What you will find within this article:
- Installing GitLab Omnibus on your Linux PC.
- Hosting the GitLab server on your own website.
- Making the Linux PC accessible from anywhere via SSH.
- Remotely booting your PC whenever needed.
Keep in mind that this is not a guide for a production-ready setup! It’s just a little project to play around and set up your own GitLab server on which you can test several services (e.g. GitLab CI/CD, GitLab Pages, etc.) or just use them to pimp your personal programming environment.
If you have any additions or want to point out any issues during the installation, let me know in the comments!
1. GitLab Omnibus Installation
Depending on your operating system, the installation process might vary. GitLab has a list of the supported systems and their respective installation processes.
The following instructions are for Ubuntu users. They are basically the same as in the GitLab docs, but I decided to put them in here as well so we have the whole process documented in one place.
First, we need to install the necessary dependencies:
$ sudo apt-get update
$ sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
GitLab will be able to send you email notifications if you configure a mail server. For that, you could either use Postfix or configure an external SMTP server.
In our case, we want to keep it simple and install Postfix:
$ sudo apt-get install -y postfix