GitHub kostet ab 4$/Seat für private Repos mit Actions. Bei 10 Entwicklern sind das 40$/Monat. GitLab Self-Hosted? Unbegrenzte User, unbegrenzte CI/CD Minutes, volle Datenkontrolle – für den Preis eines VPS.
Der Clou: Mit den richtigen KI-Prompts (Claude, ChatGPT) sparst du Stunden bei der Einrichtung. Statt Doku wälzen: Prompt kopieren, Server-Daten einfügen, fertige Befehle ausführen.
Dieser Guide zeigt dir GitLab CE Installation mit Docker – inklusive copy-paste KI-Prompts für jeden Schritt.
Hardware-Anforderungen
GitLab ist ressourcenhungrig. Die offizielle Empfehlung: 4 GB RAM Minimum, 8 GB für produktive Nutzung.
| Team-Größe | RAM | CPU | Storage | Anwendungsfall |
|---|---|---|---|---|
| Klein (1-10 User) | 4 GB | 2 vCPU | 50 GB | Hobby-Projekte, kleine Teams |
| Mittel (10-50 User) | 8 GB | 4 vCPU | 100 GB | Startups, Agenturen |
| Groß (50-100+ User) | 16 GB | 8 vCPU | 200+ GB | Unternehmen, viele Repos |
Tipp: GitLab braucht viel RAM für Sidekiq (Background Jobs) und Gitaly (Git-Operations). Lieber mehr RAM als mehr CPU.
Server für GitLab gesucht?
Unser Kalkulator berechnet deine Anforderungen basierend auf Teamgröße und CI/CD-Nutzung.
GitLab Server-KalkulatorSchritt 1: Server vorbereiten
Hier kommt der erste KI-Prompt. Kopiere ihn, ersetze die Platzhalter, und lass dir ein fertiges Setup-Script generieren:
Manuelle Basis-Vorbereitung
Falls du es selbst machen willst:
# System aktualisieren
apt update && apt upgrade -y
# Firewall konfigurieren
ufw allow 22/tcp # SSH
ufw allow 80/tcp # HTTP
ufw allow 443/tcp # HTTPS
ufw enable
# Docker installieren
curl -fsSL https://get.docker.com | sh
apt install docker-compose-plugin -y
Schritt 2: GitLab mit Docker Compose
Erstelle Verzeichnis und Konfiguration:
mkdir -p /opt/gitlab && cd /opt/gitlab
nano docker-compose.yml
Docker Compose Konfiguration:
version: '3.8'
services:
gitlab:
image: gitlab/gitlab-ce:latest
container_name: gitlab
restart: always
hostname: 'gitlab.deine-domain.de'
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'https://gitlab.deine-domain.de'
gitlab_rails['gitlab_shell_ssh_port'] = 2222
# Ressourcen-Optimierung für kleine VPS
puma['worker_processes'] = 2
sidekiq['concurrency'] = 10
ports:
- '80:80'
- '443:443'
- '2222:22'
volumes:
- gitlab_config:/etc/gitlab
- gitlab_logs:/var/log/gitlab
- gitlab_data:/var/opt/gitlab
shm_size: '256m'
volumes:
gitlab_config:
gitlab_logs:
gitlab_data:
Starten:
docker compose up -d
Hinweis: Der erste Start dauert 5-10 Minuten. GitLab konfiguriert sich intern.
Schritt 3: Erstes Login
Nach dem Start das initiale Root-Passwort auslesen:
docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
Dann im Browser: https://gitlab.deine-domain.de
- Username:
root - Password: Aus dem obigen Befehl
Wichtig: Das initiale Passwort wird nach 24 Stunden gelöscht. Sofort ändern unter User Settings → Password.
Troubleshooting mit KI
GitLab-Fehler können kryptisch sein. Dieser Prompt hilft bei der Diagnose:
Häufige Probleme
Container startet nicht (OOM):
# RAM-Verbrauch prüfen
docker stats gitlab
# Swap hinzufügen wenn nötig
fallocate -l 4G /swapfile && chmod 600 /swapfile
mkswap /swapfile && swapon /swapfile
502 Bad Gateway: GitLab braucht Zeit zum Starten. Warte 5-10 Minuten oder prüfe:
docker exec -it gitlab gitlab-ctl status
SSL-Zertifikat funktioniert nicht: Let's Encrypt braucht erreichbare Ports 80/443. Firewall prüfen!
CI/CD Pipeline Basics
GitLab CI/CD ist einer der Hauptgründe für Self-Hosting – unbegrenzte Pipeline-Minutes.
GitLab Runner installieren
Der Runner führt deine Pipelines aus. Am besten im gleichen Docker-Netzwerk:
# Zu docker-compose.yml hinzufügen
gitlab-runner:
image: gitlab/gitlab-runner:latest
container_name: gitlab-runner
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- gitlab_runner_config:/etc/gitlab-runner
Runner registrieren:
docker exec -it gitlab-runner gitlab-runner register
Erste Pipeline erstellen
Lass dir eine Pipeline von der KI generieren:
Beispiel für ein Node.js Projekt:
stages:
- build
- test
- deploy
build:
stage: build
image: node:20
script:
- npm ci
cache:
paths:
- node_modules/
test:
stage: test
image: node:20
script:
- npm test
dependencies:
- build
deploy:
stage: deploy
image: alpine
script:
- apk add openssh-client
- ssh user@server "cd /app && git pull && docker compose up -d --build"
only:
- main
Backup einrichten
Manuelles Backup:
docker exec -t gitlab gitlab-backup create
Backup-Dateien liegen in /var/opt/gitlab/backups/ (im Container).
GitLab.com vs Self-Hosted
| Aspekt | GitLab.com Free | GitLab Self-Hosted |
|---|---|---|
| Preis | 0$ (5 User Limit) | VPS-Kosten (~10€/Monat) |
| CI/CD Minutes | 400/Monat | Unbegrenzt |
| Storage | 5 GB | VPS-Storage |
| Private Repos | Begrenzt | Unbegrenzt |
| User | 5 (Free) | Unbegrenzt |
| Datenstandort | US/EU Cloud | Dein Server |
| Updates | Automatisch | Manuell (docker pull) |
Fazit: Ab 5 Usern oder bei DSGVO-Anforderungen lohnt sich Self-Hosting.
Fazit
Du hast jetzt einen eigenen GitLab-Server mit:
- Unbegrenzten Usern und Repos
- CI/CD ohne Minutenlimits
- Voller Datenkontrolle
Der KI-Workflow: Bei Problemen oder neuen Features – Prompt kopieren, Kontext einfügen, Lösung bekommen. Spart Stunden an Dokumentation-Recherche.
Kosten: Ein VPS mit 8 GB RAM kostet ~10€/Monat. GitHub Team für 5 User: 19$/Monat. Die Rechnung ist klar.
Häufig gestellte Fragen
Weitere Self-Hosting Guides
GitLab-Server mit Kalkulator finden
Berechne deine Anforderungen basierend auf Teamgröße und CI/CD-Nutzung. Direkter Preisvergleich aller Anbieter.
Zum GitLab Server-Finder



