GitLab auf einem VPS einrichten

Schritt-für-Schritt-Anleitung zur Bereitstellung von GitLab mit SSL und Docker.

GitLab ist eine vollständige DevOps-Plattform — Git-Repository-Hosting, CI/CD-Pipelines, Aufgabenverwaltung und Teamzusammenarbeit alles in einem. Wenn Sie Ihre eigene Instanz auf einem VPS betreiben, behalten Sie die volle Kontrolle: Ihr Code bleibt auf Ihrem Server, es gibt keine Limits für private Repositories, und kein Dritter hat Zugriff auf Ihre Daten. Für Teams, die mit sensiblem Code oder internen Projekten arbeiten, ist das ein wesentlicher Unterschied zum Betrieb über eine Cloud-Instanz.

GitLab ist ressourcenintensiv. Stellen Sie sicher, dass Ihr VPS mindestens 4 GB RAM und 4 CPU-Kerne hat, bevor Sie beginnen — mit weniger werden Sie wahrscheinlich Stabilitätsprobleme haben.

Domain einrichten

GitLab benötigt eine Domain, um automatisch ein SSL-Zertifikat über Let's Encrypt zu erhalten. Ohne sie wird die Einrichtung nicht ordnungsgemäß abgeschlossen.

  1. Registrieren Sie eine Domain oder erstellen Sie eine Subdomain — etwas wie git.ihre-seite.com funktioniert gut.
  2. Gehen Sie zur DNS-Verwaltung in Ihrem Verwaltungspanel und erstellen Sie einen A-Record, der auf die IP-Adresse Ihres VPS zeigt.
  3. Warten Sie auf die DNS-Propagierung — das dauert üblicherweise zwischen 5 und 30 Minuten.

Wichtig

Starten Sie den Installer erst, wenn Ihr A-Record tatsächlich auf die IP Ihres Servers auflöst. Let's Encrypt versucht während der Einrichtung, den Domainbesitz zu verifizieren — das schlägt fehl, wenn DNS noch nicht bereit ist.

Verbindung zum Server herstellen

  1. Melden Sie sich in Ihrem Verwaltungspanel an → VPS → wählen Sie Ihren Server aus.
  2. Notieren Sie die IP-Adresse und das Root-Passwort aus den Bestelldetails.
  3. Verbinden Sie sich via SSH und geben Sie direkt Port 2222 an:
ssh root@IHRE_SERVER_IP -p 2222

![Verbindung zum Server und initiale GitLab-Einrichtung](/media/article/img/gitlab_setup_init_en.webp „Verbindung zum Server und initiale GitLab-Einrichtung") Verbindung zum Server und initiale GitLab-Einrichtung

Noch kein VPS?

Fornex bietet VPS-Hosting mit vollem Root-Zugriff und Support rund um die Uhr. Sichern Sie sich einen stabilen Server mit NVMe-Laufwerken für schnellen und zuverlässigen Betrieb. Mehr dazu auf der VPS-Seite von Fornex.

Setup-Assistenten ausführen

Beim ersten Einloggen werden Sie vom Willkommensbildschirm des GitLab Direct Image begrüßt:

*****************************************************
* GitLab Direct Image (SSL / Port 22 for Git)       *
*****************************************************
* EN: BEFORE RUNNING: Point A-record to this server IP
* EN: SYSTEM SSH PORT: 2222
* EN: To start setup, run: gitlab-setup
*****************************************************

Der Assistent stellt Ihnen zwei Fragen:

  1. Domain — geben Sie Ihre Domain ein (z. B. git.example.com):
Enter your domain (e.g., git.example.com):
  1. Email — geben Sie eine Adresse für Let's Encrypt SSL-Benachrichtigungen ein:
Enter Email for SSL notifications:

Danach übernimmt das Skript und startet GitLab via Docker Compose. Sie sehen eine Ausgabe in etwa dieser Art:

🐳 Starting GitLab via docker compose...
[+] up 2/2
 ✔ Network gitlab_default  Created   0.0s
 ✔ Container gitlab-web    Started   0.5s
------------------------------------------------
✅ Setup initiated!
⚠️  WARNING: System SSH is now on port 2222!
⏳ GitLab will be ready in 3-5 minutes.
🔑 Initial root password will be available at:
   cat /root/gitlab/config/initial_root_password
------------------------------------------------

![GitLab-Einrichtung läuft](/media/article/img/gitlab_setup_en.webp „GitLab-Einrichtung läuft") GitLab-Einrichtung läuft

Admin-Passwort abrufen

GitLab generiert automatisch ein temporäres Passwort für den root-Account. Rufen Sie es mit folgendem Befehl ab:

cat /root/gitlab/config/initial_root_password

Kopieren Sie das Passwort (den langen alphanumerischen Code nach dem Wort Password:) an einen sicheren Ort — Sie werden es gleich benötigen.

![Initiales GitLab-Root-Passwort abrufen](/media/article/img/gitlab_get_pass_en.webp „Initiales GitLab-Root-Passwort abrufen") Initiales GitLab-Root-Passwort abrufen

Erste Anmeldung

Warten Sie 3–5 Minuten, bis GitLab vollständig gestartet ist, öffnen Sie dann Ihren Browser und navigieren Sie zu:

https://ihre-domain.com

![GitLab-Anmeldebildschirm](/media/article/img/gitlab_first_login_en.webp „GitLab-Anmeldebildschirm") GitLab-Anmeldebildschirm

Melden Sie sich an mit:

  • Benutzername: root
  • Passwort: das im vorherigen Schritt abgerufene

Nach dem Einloggen gehen Sie direkt zu User Settings → Password und legen Sie ein dauerhaftes Passwort fest, bevor Sie etwas anderes tun.

![Passwort in GitLab ändern](/media/article/img/gitlab_setup_password_en.webp „Passwort in GitLab ändern") Passwort in GitLab ändern

Dienst verwalten

GitLab läuft in Docker, daher gelten die üblichen docker compose-Befehle. Wechseln Sie zuerst in das Projektverzeichnis:

cd /root/gitlab

Verwenden Sie dann den jeweils benötigten Befehl:

  • Neustart: docker compose restart
  • Stoppen: docker compose down
  • Starten: docker compose up -d
  • Logs verfolgen: docker compose logs -f

Wissenswertes

  • SSH-Port-Aufteilung: Port 22 ist ausschließlich für Git-Operationen reserviert (git clone, git push usw.). Für SSH-Verbindungen zum Server selbst verwenden Sie immer Port 2222.
  • Automatischer Neustart: Der Docker-Container ist so konfiguriert, dass er beim Server-Neustart automatisch startet — Ihre GitLab-Instanz kommt ohne manuellen Eingriff wieder hoch.
  • Ressourcen: Behalten Sie die Speicherauslastung im Blick, besonders wenn Ihr Team und die Repositories wachsen. Sie können die Serverlast im Dashboard überwachen und bei Bedarf auf einen leistungsstärkeren Tarif wechseln.
  • Backups: Gewöhnen Sie sich an, Ihre Repositories und Konfigurationen regelmäßig zu sichern. Das integrierte Backup-Tool: docker exec -t gitlab-web gitlab-rake gitlab:backup:create.
    Das Backup wird innerhalb des Docker-Containers unter /var/opt/gitlab/backups/ erstellt. Um die Datei in Ihr aktuelles Host-Verzeichnis zu kopieren, führen Sie folgenden Befehl aus:
docker cp gitlab-web:/var/opt/gitlab/backups/<backup_filename>.tar .

Hilfe

Bei Fragen oder wenn Sie Unterstützung brauchen, erreichen Sie uns jederzeit über das Ticketsystem — wir helfen Ihnen gern weiter!

Hilfe benötigt?Unsere Ingenieure helfen Ihnen kostenlos bei jeder Frage in wenigen MinutenKontaktieren Sie uns