GitLab einfach selbst hosten

GitLab einfach selbst hosten

Yulei Chen - Content-Engineerin bei sliplane.ioYulei Chen
6 min

GitLab ist die All-in-One DevOps-Plattform fuer Versionskontrolle, CI/CD Pipelines, Issue Tracking und Code Reviews. GitLab's SaaS-Pläne starten zwar kostenlos, aber die Preise steigen schnell, wenn dein Team wächst - der Premium-Plan kostet $29/User/Monat, und Features wie Advanced Security Scanning und Compliance sind erst ab dem Ultimate-Tier fuer $99/User/Monat verfuegbar.

Sliplane ist eine Managed Container Platform, die Self-Hosting schmerzlos macht. Mit One-Click Deployment bekommst du GitLab CE in wenigen Minuten zum Laufen - kein Server-Setup, keine Reverse-Proxy-Config, keine Infrastruktur zum Verwalten.

Voraussetzungen

Bevor du loslegst, brauchst du einen Sliplane Account (kostenlose Testphase verfuegbar).

GitLab ist eine ressourcenhungrige Anwendung. Wir empfehlen einen Server mit mindestens 4 vCPU Cores und 4 GB RAM. Kleinere Server funktionieren fuer den persönlichen Gebrauch, werden aber unter Last langsam.

Quick Start

Sliplane bietet One-Click Deployment mit Presets.

SliplaneGitLab deployen >
  1. Klick auf den Deploy-Button oben
  2. Wähl ein Projekt aus
  3. Wähl einen Server aus. Wenn du dich gerade angemeldet hast, bekommst du einen 48-Stunden-Testserver
  4. Klick auf Deploy!

GitLab braucht beim ersten Start ein paar Minuten zum Initialisieren. Keine Sorge, wenn du direkt nach dem Deployment einen 502-Fehler siehst - gib ihm einfach 2-3 Minuten, während Datenbank-Migrationen und Asset-Kompilierung laufen.

Ueber das Preset

Das One-Click Deployment oben nutzt Sliplane's GitLab Preset. Das steckt drin:

  • GitLab Community Edition (gitlab/gitlab-ce) - die kostenlose Open-Source-Version
  • Gepinnt auf Version 18.10.3 fuer Stabilität (check Docker Hub fuer neuere Versionen)
  • Drei persistente Volumes fuer Config, Logs und Anwendungsdaten
  • Vorkonfiguriert fuer Sliplane's Reverse Proxy (TLS-Terminierung wird automatisch uebernommen)
  • Root-Passwort wird automatisch generiert und ist in den Environment Variables verfuegbar

Nächste Schritte

Sobald GitLab auf Sliplane läuft, erreichst du es ueber die Domain, die Sliplane bereitgestellt hat (z.B. gitlab-xxxx.sliplane.app).

Standard-Login

Melde dich an mit:

  • Benutzername: root
  • Passwort: Check die GITLAB_ROOT_PASSWORD Environment Variable in deinem Sliplane Dashboard

Ändere das Root-Passwort sofort nach dem ersten Login unter User Settings > Password.

Wichtige Environment Variables

Du kannst deine GitLab-Instanz anpassen, indem du Environment Variables im Sliplane Dashboard hinzufuegst oder änderst:

VariableBeschreibungStandard
GITLAB_ROOT_PASSWORDInitiales Root-PasswortAutomatisch generiert
EXTERNAL_URLOeffentliche URL deiner InstanzAutomatisch gesetzt
GITLAB_OMNIBUS_CONFIGRuby Config Overrides fuer GitLab OmnibusNginx Settings
TZContainer-ZeitzoneUTC

SMTP konfigurieren

Um E-Mail-Benachrichtigungen zu aktivieren, fueg SMTP-Settings zur GITLAB_OMNIBUS_CONFIG Environment Variable hinzu. Zum Beispiel:

nginx['listen_https'] = false; nginx['listen_port'] = 80; gitlab_rails['smtp_enable'] = true; gitlab_rails['smtp_address'] = "smtp.gmail.com"; gitlab_rails['smtp_port'] = 587; gitlab_rails['smtp_user_name'] = "deine-email@gmail.com"; gitlab_rails['smtp_password'] = "dein-app-passwort"; gitlab_rails['smtp_domain'] = "smtp.gmail.com"; gitlab_rails['smtp_authentication'] = "login"; gitlab_rails['smtp_enable_starttls_auto'] = true;

Achte drauf, dass du die bestehenden nginx['listen_https'] = false; nginx['listen_port'] = 80; Settings beibehältst, wenn du SMTP hinzufuegst. Sonst versucht GitLab selbst TLS zu handeln und kollidiert mit Sliplane's Reverse Proxy.

Die GitLab SMTP Docs haben provider-spezifische Beispiele.

Persistenter Storage

Das Preset mountet drei Volumes:

VolumeMount PathZweck
gitlab-config/etc/gitlabGitLab Config-Dateien (gitlab.rb, gitlab-secrets.json)
gitlab-logs/var/log/gitlabService Log-Dateien
gitlab-data/var/opt/gitlabGit Repositories, Datenbank, Uploads, CI Artifacts

Deine Daten bleiben bei Redeployments und Updates erhalten. Fuer Backup-Strategien schau dir 4 easy ways to backup Docker volumes an.

Logging

GitLab schreibt Logs nach /var/log/gitlab im Container, die im gitlab-logs Volume persistiert werden. Du kannst Container-Output auch ueber Sliplane's eingebauten Log Viewer sehen. Mehr Tipps zum Arbeiten mit Container-Logs findest du in how to use Docker logs.

Troubleshooting

Wenn GitLab beim ersten Start 502-Fehler zeigt, warte einfach ein paar Minuten. GitLab fuehrt beim initialen Start Datenbank-Migrationen durch und kompiliert Assets - das kann je nach Server-Grösse 2-5 Minuten dauern.

Wenn du anhaltende Speicherprobleme oder Abstuerze hast, stell sicher, dass dein Server mindestens 4 GB RAM hat. GitLab's offizielle Empfehlung sind 4 Cores und 4 GB RAM als Minimum fuer bis zu 500 User.

Kostenvergleich

GitLab braucht mehr Ressourcen als eine typische Web-App, daher vergleichen wir Server mit 4 vCPU Cores und 8 GB RAM:

AnbietervCPU CoresRAMDiskGeschätzte MonatskostenHinweise
Sliplane48 GB80 GB~€29Preis pro Server
Render48 GB80 GB~$85–$120VM Pro
Fly.io48 GB80 GB~$55–$70VM + Volume
Railway48 GB80 GB~$50–$120Nutzungsbasiert

FAQ

Kann ich GitLab CI/CD mit der Community Edition nutzen?

Ja. GitLab CE bringt vollen CI/CD Pipeline Support mit. Du kannst .gitlab-ci.yml Pipelines definieren und Builds, Tests und Deployments automatisieren. Die Hauptunterschiede zwischen CE und EE liegen bei Advanced Security Scanning, Compliance Features und Premium Support.

Wie richte ich GitLab Runners ein?

GitLab Runners fuehren deine CI/CD Jobs aus. Du kannst einen Runner ueber Admin Area > CI/CD > Runners in der GitLab UI registrieren. Fuer einen Docker-basierten Runner könntest du einen als separaten Service auf Sliplane deployen und mit deiner GitLab-Instanz verbinden. Die GitLab Runner Docs haben die Anleitung dafuer.

Wie update ich GitLab?

Ändere den Image Tag in deinen Service Settings im Sliplane Dashboard und redeploye. Check Docker Hub fuer die neueste stabile Version. Lies immer die Upgrade Path Docs bevor du mehrere Major Versionen ueberspringst - GitLab erfordert sequenzielle Major-Version-Upgrades.

Gibt es Alternativen zu GitLab?

Beliebte selbst gehostete Alternativen sind Gitea (leichtgewichtig, Go-basiert), Forgejo (Community Fork von Gitea) und OneDev (eingebautes CI/CD). Wenn du nur Git Hosting ohne CI/CD brauchst, sind Gitea oder Forgejo deutlich ressourcenschonender.

Wie viel RAM braucht GitLab wirklich?

GitLab empfiehlt offiziell 4 CPU Cores und 4 GB RAM als Minimum fuer bis zu 500 User. Fuer ein kleines Team (unter 20 User) reichen 4 GB. Wenn du CI/CD Pipelines auf dem gleichen Server laufen lassen willst, sorgen 8 GB oder mehr fuer ein deutlich besseres Erlebnis.

Jetzt GitLab selbst hosten - ganz einfach!

Sliplane gibt dir alles, was du brauchst, um GitLab ohne Server-Stress zu betreiben.