GitLab ist ein Open-Source-GIT-Repository-Manager, der auf Rails basiert und von GitLab Inc. entwickelt wurde. Es ist ein webbasierter GIT-Repository-Manager, der es Ihrem Team ermöglicht, an Code zu arbeiten, Funktionsanfragen durchzuführen, Fehler zu verfolgen und Anwendungen zu testen und zu implementieren. GitLab bietet Funktionen wie ein Wiki, Problemverfolgung, Codeüberprüfungen, Aktivitätsfeeds und Zusammenführungsverwaltung. Es kann mehrere Projekte hosten.
GitLab ist in vier Editionen verfügbar:
- Gitlab CE (Community Edition) – selbst gehostet, kostenlos und Support vom Community-Forum.
- Gitlab EE (Enterprise Edition) – selbst gehostete, kostenpflichtige App mit zusätzlichen Funktionen.
- GitLab.com - SaaS, kostenlos.
- GitLab.io - Private GitLab-Instanz, verwaltet von GitLab Inc.
In diesem Tutorial zeige ich Ihnen Schritt für Schritt, wie Sie GitLab CE (Community Edition) auf Ihrem eigenen Ubuntu 18.04 LTS (Bionic Beaver) Server installieren. Ich werde das von GitLab bereitgestellte „Omnibus“-Paket für eine einfache Installation verwenden.
Voraussetzungen
- Ubuntu 18.04-Server
- Min. RAM-Speicher 4 GB – für eine bessere Leistung 8 GB verwenden
- Root-Rechte
Was wir tun werden
- Repository aktualisieren und Pakete aktualisieren
- Abhängigkeiten installieren
- Installieren Sie die GitLab Community Edition
- SSL Letsencrypt und DHPARAM-Zertifikat generieren
- HTTPS für GitLab konfigurieren
- Ubuntu-UFW-Firewall konfigurieren
- GitLab-Nachinstallation
- Testen
Schritt 1 – Repository aktualisieren und Pakete aktualisieren
Bevor Sie Pakete auf dem System installieren, aktualisieren Sie alle verfügbaren Repositories und aktualisieren Sie dann alle Pakete auf dem System.
Führen Sie unten die apt-Befehle aus.
sudo apt update
sudo apt upgrade -y
Warten Sie auf die zu aktualisierenden Installationspakete.
Schritt 2 – Gitlab-Abhängigkeiten installieren
GitLab benötigt einige Paketabhängigkeiten für die Installation, einschließlich curl, postfix und ca-certificates.
Installieren Sie die Abhängigkeiten der GitLab-Pakete mit dem folgenden apt-Befehl.
sudo apt install curl openssh-server ca-certificates postfix -y
Während der Postfix-Installation werden Sie nach der Konfiguration gefragt, wählen Sie 'Internet Site'.
Geben Sie dann den Serverdomänennamen ein, der zum Senden einer E-Mail verwendet werden soll.
Und wir sind bereit, GitLab auf dem Server zu installieren.
Schritt 3 – GitLab installieren
In diesem Schritt installieren wir GitLab mit den Omnibus-Paketen. Der Omnibus installiert alle Pakete, Dienste und Tools, die zum Ausführen von GitLab auf dem Server erforderlich sind.
Fügen Sie das GitLab-Repository mit dem Curl-Befehl hinzu.
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
Installieren Sie dann die GitLab CE Community Edition mit dem apt-Befehl.
sudo apt install gitlab-ce -y
Der Befehl lädt das GitLab CE-Paket herunter und installiert es, und wenn die Installation abgeschlossen ist, sehen Sie die folgenden Ergebnisse.
Als nächstes sollten wir die URL konfigurieren, die für den Zugriff auf unseren GitLab-Server verwendet wird. Wir werden eine Domain mit dem Namen „git.hakase-labs.pw“ für die GitLab-Zugriffs-URL verwenden und HTTPS darauf aktivieren.
Um den GitLab-URL-Zugriff zu ändern, bearbeiten Sie die Datei „/etc/gitlab/gitlab.rb“.
sudo vim /etc/gitlab/gitlab.rb
Ändern Sie nun den Wert 'external_url' mit Ihrem eigenen Domainnamen.
external_url 'http://git.hakase-labs.pw'
Speichern und beenden.
Schritt 4 – Let's encrypt SSL-Zertifikat und DHPARAM-Zertifikat generieren
In diesem Schritt generieren wir ein neues Letsencrypt-Zertifikat und ein DHPARAM-Zertifikat für den GitLab-Domänennamen „git.hakase-labs.pw“.
Installieren Sie das Tool lets encrypt mit dem folgenden apt-Befehl.
sudo apt install letsencrypt -y
Führen Sie nach Abschluss der Installation den folgenden letsencrypt-Befehl aus.
sudo letsencrypt certonly --standalone --agree-tos --no-eff-email --agree-tos --email [email protected] -d git.hakase-labs.pw
Und wenn es fertig ist, erhalten Sie das unten gezeigte Ergebnis.
Es wurden SSL-Letsencrypt-Zertifikate generiert, die sich im Verzeichnis „/etc/letsencyrpt/“ befinden.
Als Nächstes generieren wir das DHPARAM-Zertifikat mit dem OpenSSL-Befehl.
Erstellen Sie ein neues Verzeichnis „/etc/gitlab/ssl“ und führen Sie den folgenden OpenSSL-Befehl aus.
sudo mkdir -p /etc/gitlab/ssl/
sudo openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048
Ändern Sie nun die Berechtigung des SSL-Verzeichnisses.
chmod 600 /etc/gitlab/ssl/*
Und alle Zertifikate, die für die HTTPS-Konfiguration von GitLab benötigt werden, wurden generiert.
Schritt 5 – HTTPS für GitLab konfigurieren
Um HTTPS für die GitLab-Installation zu aktivieren, müssen wir die Datei „gitlab.rb“ bearbeiten.
Bearbeiten Sie die Datei „/etc/gitlab/gitlab.rb“ mit dem vim-Befehl unten.
sudo vim /etc/gitlab/gitlab.rb
Ändern Sie die „external_url“ von Gitlab in „https://git.hakase-labs.pw“.
external_url 'https://git.hakase-labs.pw'
Fügen Sie nun die Konfiguration unten in den Abschnitt „#GitLab Nginx“ ein.
nginx['redirect_http_to_https'] = true nginx['ssl_certificate'] = "/etc/letsencrypt/live/git.hakase-labs.pw/fullchain.pem" nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/git.hakase-labs.pw/privkey.pem" nginx['ssl_dhparam'] = "/etc/gitlab/ssl/dhparams.pem"
Speichern und beenden.
Führen Sie nun den unten stehenden Befehl „gitlab-ctl“ aus.
sudo gitlab-ctl reconfigure
Dieser Befehl installiert und konfiguriert GitLab basierend auf der Konfigurationsdatei „/etc/gitlab/gitlab.rb“.
Und wenn es fertig ist, sehen Sie das Ergebnis wie unten.
Die GitLab-Installation ist abgeschlossen und HTTPS für GitLab wurde aktiviert.
Schritt 6 – Ubuntu UFW Firewall konfigurieren
In diesem Schritt aktivieren wir die Ubuntu UFW-Firewall. Es ist bereits auf dem System installiert, wir müssen den Dienst nur starten. Wir werden GitLab hinter der Ubuntu UFW-Firewall ausführen, also müssen wir die HTTP- und HTTPS-Ports öffnen.
Fügen Sie der Konfiguration ssh-, http- und https-Dienste hinzu.
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
Und aktivieren Sie die Ubuntu UFW-Firewall mit dem folgenden Befehl.
sudo ufw enable
Geben Sie 'y' für Ja ein, um es zu aktivieren.
Überprüfen Sie nun alle Dienste und Ports in der Liste.
sudo ufw status
Und Sie erhalten ssh-, http- und https-Dienste auf der Liste.
Schritt 7 – GitLab-Nachinstallation
Öffnen Sie den Webbrowser und geben Sie die Gitlab-URL „git.hakase-labs.pw“ ein, und Sie werden zur HTTPS-Verbindung weitergeleitet.
Erstellen Sie ein neues GitLab-Root-Passwort
Geben Sie Ihr neues Passwort für den Root-GitLab-Benutzer ein und klicken Sie auf die Schaltfläche „Passwort ändern“.
Melden Sie sich jetzt als „Root“-Benutzer mit Ihrem eigenen Passwort an und klicken Sie auf die Schaltfläche „Anmelden“.
Jetzt erhalten Sie das GitLab Dashboard.
Profil ändern
Klicken Sie auf die Profilschaltfläche und wählen Sie „Einstellungen“.
Geben Sie im Abschnitt „Haupteinstellungen“ den Profilnamen „hakase“ ein und klicken Sie dann auf die Option „Profileinstellungen aktualisieren“.
Benutzernamen ändern
Klicken Sie auf die Registerkarte „Konto“ und geben Sie den Benutzernamen „hakase“ ein.
Klicken Sie nun auf die Schaltfläche „Benutzernamen aktualisieren“.
SSH-Schlüssel hinzufügen
Generieren Sie einen neuen Schlüssel mit dem Befehl ssh-keygen wie unten beschrieben.
ssh-keygen
cat ~/.ssh/id_rsa.pub
Kopieren Sie den Schlüssel „id_rsa.pub“.
Kehren Sie nun zum GitLab-Benutzer-Dashboard zurück und klicken Sie links auf das Menü „SSH-Schlüssel“.
Fügen Sie den öffentlichen SSH-Schlüssel „id_rsa.pub“ ein und klicken Sie auf die Schaltfläche „Schlüssel hinzufügen“.
Anmeldebeschränkungen
Klicken Sie in der Mitte auf die Schaltfläche „Verwaltungsbereich“ und dann auf „Einstellungen“.
Deaktivieren Sie die Option "Anmeldung aktiviert" und klicken Sie auf die Schaltfläche "Änderungen speichern".
Kontolimit
Klicken Sie auf den Abschnitt „Konto und Limit“ und legen Sie das standardmäßige Projektlimit auf 20 fest.
Und klicken Sie auf die Schaltfläche „Änderungen speichern“.
Schritt 8 – Gitlab testen
Abschließend werden wir einige Tests durchführen, um sicherzustellen, dass unser GitLab-System ordnungsgemäß funktioniert.
Neues Projekt erstellen
Klicken Sie auf das Plus-Symbol oben in der Mitte, um ein neues Projekt-Repository zu erstellen. Geben Sie Ihren Projektnamen und eine Beschreibung ein und richten Sie die Sichtbarkeitseinstellungen Ihres Projekts ein. Klicken Sie dann auf die Schaltfläche 'Projekt erstellen'.
Das neue Projekt wurde erstellt.
Erstes Commit testen und pushen
Jetzt werden wir beginnen, neue Inhalte zum Repository hinzuzufügen. Stellen Sie sicher, dass Git auf Ihrem Computer installiert ist, und wir müssen den globalen Benutzernamen und die E-Mail-Adresse für Git mit dem folgenden Befehl einrichten.
git config --global user.name "hakase"
git config --global user.email "[email protected]"
Klonen Sie das Repository und fügen Sie eine README.md-Datei hinzu.
git clone https://git.hakase-labs.pw/hakase/project01.git
cd project01/
vim README.md
Sie werden nach dem Benutzerpasswort „hakase“ gefragt. Bitte geben Sie dasselbe Passwort ein, das Sie beim ersten Zugriff auf GitLab verwendet haben.
Übertragen Sie eine neue Datei in das 'project01'-Repository.
git add .
git commit -m 'Add README.md file by hakase-labs'
Als nächstes übertragen Sie die Änderung per Push in das Repository auf dem GitLab-Server.
git push origin master
Geben Sie Ihr Passwort ein und drücken Sie die Eingabetaste, um fortzufahren. Das Ergebnis sehen Sie unten.
Öffnen Sie nun das Projekt ‚project01‘ in Ihrem Webbrowser und Sie werden sehen, dass die neue README.md-Datei zum Repository hinzugefügt wurde.
Die GitLab-Installationsanleitung für Ubuntu 18.04 wurde erfolgreich abgeschlossen.