GitLab ist eine beliebte Plattform für Git-basierte Versionskontrolle und bietet zusätzlich Funktionen wie CI/CD, Projektmanagement und mehr. In dieser Anleitung zeige ich dir, wie du GitLab auf einem Ubuntu-Server installierst, um eine eigene Git-Hosting-Lösung zu erstellen.

Voraussetzungen

  • Ubuntu 22.04 oder neuer
  • Benutzer mit sudo-Rechten
  • Mindestens 4 GB RAM und 2 CPUs empfohlen für eine optimale Leistung

1. System aktualisieren

Zuerst das System auf den neuesten Stand bringen:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo apt update && sudo apt upgrade -y
sudo apt update && sudo apt upgrade -y
sudo apt update && sudo apt upgrade -y

Dann das System neu starten:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo reboot
sudo reboot
sudo reboot

2. GitLab Repository hinzufügen

Füge das GitLab-Repository und den GPG-Schlüssel hinzu:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
curl https://packages.gitlab.com/gpg.key | sudo apt-key add -
curl https://packages.gitlab.com/gpg.key | sudo apt-key add -
curl https://packages.gitlab.com/gpg.key | sudo apt-key add -

Füge das GitLab-Repository zu deiner Paketquelle hinzu:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo tee /etc/apt/sources.list.d/gitlab_gitlab-ce.list <<EOF
deb https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ $(lsb_release -c | awk '{print $2}') main
EOF
sudo tee /etc/apt/sources.list.d/gitlab_gitlab-ce.list <<EOF deb https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ $(lsb_release -c | awk '{print $2}') main EOF
sudo tee /etc/apt/sources.list.d/gitlab_gitlab-ce.list <<EOF
deb https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ $(lsb_release -c | awk '{print $2}') main
EOF

Aktualisiere die Paketlisten:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo apt update
sudo apt update
sudo apt update

3. GitLab Community Edition installieren

Installiere GitLab Community Edition:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo apt install gitlab-ce -y
sudo apt install gitlab-ce -y
sudo apt install gitlab-ce -y

4. GitLab konfigurieren

Nach der Installation musst du GitLab konfigurieren. Öffne die Konfigurationsdatei:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo nano /etc/gitlab/gitlab.rb
sudo nano /etc/gitlab/gitlab.rb
sudo nano /etc/gitlab/gitlab.rb

Ändere die external_url-Zeile, um deine Domain oder IP-Adresse einzutragen. Beispiel:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
external_url 'http://your-domain-or-ip'
external_url 'http://your-domain-or-ip'
external_url 'http://your-domain-or-ip'

Speichere die Datei und schließe den Editor.

5. GitLab initialisieren

Führe den folgenden Befehl aus, um GitLab zu initialisieren und alle erforderlichen Dienste zu starten:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo gitlab-ctl reconfigure
sudo gitlab-ctl reconfigure
sudo gitlab-ctl reconfigure

Dies kann einige Minuten dauern.

6. GitLab im Webbrowser öffnen

GitLab läuft nun standardmäßig auf Port 80 (oder 443, wenn du HTTPS einrichtest). Öffne einen Webbrowser und gehe zu:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
http://<Server-IP>
http://<Server-IP>
http://<Server-IP>

Die erste Anmeldung erfolgt mit dem Benutzernamen root und einem zufällig generierten Passwort. Um das Passwort anzuzeigen, führe folgenden Befehl aus:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo cat /etc/gitlab/initial_root_password
sudo cat /etc/gitlab/initial_root_password
sudo cat /etc/gitlab/initial_root_password

Ändere nach der ersten Anmeldung das Passwort.

7. GitLab HTTPS einrichten (optional)

Für eine sichere Verbindung kannst du ein SSL-Zertifikat einrichten. Wenn du Let’s Encrypt verwenden möchtest, öffne die Konfigurationsdatei erneut:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo nano /etc/gitlab/gitlab.rb
sudo nano /etc/gitlab/gitlab.rb
sudo nano /etc/gitlab/gitlab.rb

Aktiviere Let’s Encrypt und stelle sicher, dass du die richtige Domain eingetragen hast:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
letsencrypt['enable'] = true
nginx['redirect_http_to_https'] = true
letsencrypt['enable'] = true nginx['redirect_http_to_https'] = true
letsencrypt['enable'] = true
nginx['redirect_http_to_https'] = true

Führe dann erneut die Konfiguration aus:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo gitlab-ctl reconfigure
sudo gitlab-ctl reconfigure
sudo gitlab-ctl reconfigure

GitLab wird nun mit HTTPS über Let’s Encrypt konfiguriert.

8. Firewall konfigurieren (optional)

Falls eine Firewall aktiv ist, öffne die Ports 80 und 443 für den Zugriff auf GitLab:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo ufw allow 80,443/tcp
sudo ufw allow 80,443/tcp
sudo ufw allow 80,443/tcp

Aktiviere die Firewall, wenn sie noch nicht aktiviert ist:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo ufw enable
sudo ufw enable
sudo ufw enable

Fazit

Mit GitLab hast du eine vollständige Git-basierte Versionskontrolllösung, die auch CI/CD, Issue-Tracking und mehr bietet. Diese Installation auf Ubuntu ermöglicht es dir, GitLab selbst zu hosten und bietet dir vollständige Kontrolle über deine Projekte.

Kategorien: Allgemein