
GitLab einfach selbst hosten
Yulei ChenGitLab 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.
- Klick auf den Deploy-Button oben
- Wähl ein Projekt aus
- Wähl einen Server aus. Wenn du dich gerade angemeldet hast, bekommst du einen 48-Stunden-Testserver
- 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_PASSWORDEnvironment 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:
| Variable | Beschreibung | Standard |
|---|---|---|
GITLAB_ROOT_PASSWORD | Initiales Root-Passwort | Automatisch generiert |
EXTERNAL_URL | Oeffentliche URL deiner Instanz | Automatisch gesetzt |
GITLAB_OMNIBUS_CONFIG | Ruby Config Overrides fuer GitLab Omnibus | Nginx Settings |
TZ | Container-Zeitzone | UTC |
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:
| Volume | Mount Path | Zweck |
|---|---|---|
gitlab-config | /etc/gitlab | GitLab Config-Dateien (gitlab.rb, gitlab-secrets.json) |
gitlab-logs | /var/log/gitlab | Service Log-Dateien |
gitlab-data | /var/opt/gitlab | Git 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:
| Anbieter | vCPU Cores | RAM | Disk | Geschätzte Monatskosten | Hinweise |
|---|---|---|---|---|---|
| Sliplane | 4 | 8 GB | 80 GB | ~€29 | Preis pro Server |
| Render | 4 | 8 GB | 80 GB | ~$85–$120 | VM Pro |
| Fly.io | 4 | 8 GB | 80 GB | ~$55–$70 | VM + Volume |
| Railway | 4 | 8 GB | 80 GB | ~$50–$120 | Nutzungsbasiert |
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.