Wie man GitLab unter Ubuntu 16.04 installiert und konfiguriert

GitLab ist ein Open-Source-GIT-Repository-Manager, der auf Rails basiert und von GitLab Inc. entwickelt wurde. Es handelt sich um einen webbasierten GIT-Repository-Manager, der es Ihrem Team ermöglicht, an Code zu arbeiten, Fehler und Funktionsanforderungen zu verfolgen sowie Anwendungen zu testen und bereitzustellen. GitLab bietet Funktionen wie ein Wiki, Problemverfolgung, Codeüberprüfungen, Aktivitätsfeeds und Merge-Management. Es ist in der Lage, mehrere Projekte zu hosten.

GitLab ist in vier Editionen erhältlich:

  1. Gitlab CE (Community Edition) – selbst gehostet, kostenlos und mit Unterstützung des Community-Forums.
  2. Gitlab EE (Enterprise Edition) – selbst gehostete, kostenpflichtige App, mit zusätzlichen Funktionen.
  3. GitLab.com – SaaS, kostenlos.
  4. 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 16.04 Xenial Xerus Server installieren. In diesem Tutorial werde ich das von GitLab bereitgestellte Paket ‚omnibus‘ für eine einfache Installation verwenden.

Was wir tun werden:

  1. Pakete installieren
  2. GitLab installieren
  3. GitLab-URL konfigurieren
  4. SSL generieren Let’s encrypt und DHPARAM-Zertifikat
  5. Nginx HTTPS für GitLab aktivieren
  6. UFW Firewall konfigurieren
  7. Durchführung der GitLab-Installation
  8. Prüfung

Voraussetzungen

  • Ubuntu 16.04 Server – 64bit
  • Min. RAM 2GB
  • Root-Privilegien

Schritt 1 – Installation der benötigten Ubuntu-Pakete

Der erste Schritt besteht darin, die für die Installation von GitLab benötigten Pakete zu installieren. Bitte melden Sie sich als Root-Benutzer am Server an und aktualisieren Sie das Ubuntu-Repository.

ssh root@GitLabServer
apt-get update

Installieren Sie nun die Pakete mit Curl zum Herunterladen des GitLab-Repository, Ca-Zertifikaten und Postfix für die SMTP-Konfiguration.

Installieren Sie alle Pakete mit dem Befehl apt unten.

sudo apt install curl openssh-server ca-certificates postfix

Während der Postfix-Installation werden Sie zur Konfiguration aufgefordert, wählen Sie’Internet-Site‘.

Postfix auf Ubuntu konfigurieren

und geben Sie dann den Server-Domänennamen ein, der für den Versand einer E-Mail verwendet werden soll.

Postfix-Hostname auf ubuntu konfigurieren

Schritt 2 – Gitlab installieren

In diesem Schritt werden wir GitLab mit den Omnibus-Paketen installieren. Omnibus installiert alle Pakete, Dienste und Tools, die für den Betrieb von GitLab auf Ihrem Server erforderlich sind.

Fügen Sie das GitLab-Repository mit dem Befehl curl hinzu.

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

GitLab Repository zu Ubuntu hinzufügen 16.04

Und dann installieren Sie GitLab CE Community Edition mit dem Befehl apt.

sudo apt install gitlab-ce

Warten Sie, bis der Server das gitlab-Paket heruntergeladen und installiert hat. Wenn die Installation abgeschlossen ist, sehen Sie die Ergebnisse wie folgt.

Install GitLab

Schritt 3 – Gitlab Haupt-URL konfigurieren

Nun sollten wir die URL konfigurieren, die für den Zugriff auf unseren GitLab-Server verwendet wird. Ich werde den Domainnamen ‚gitlab.hakase-labs.co‘ für die GitLab-URL hier verwenden (bitte wählen Sie Ihren eigenen Domainnamen) und ich werde HTTPS für die Zugangssicherheit der Benutzer verwenden.

Die Hauptkonfiguration von GitLab befindet sich im Verzeichnis’/etc/gitlab‘. Gehen Sie in dieses Verzeichnis und bearbeiten Sie die Konfigurationsdatei’gitlab.rb‘ mit vim.

cd /etc/gitlab
vim gitlab.rb

Gehen Sie in der GitLab-Konfiguration zu Zeile 9 ‚external_url‘ und ändern Sie die URL in Ihre URL ‚gitlab.hakase-labs.co‘.

external_url 'http://gitlab.hakase-labs.co'

Speichern Sie die Datei und verlassen Sie den Editor. Im nächsten Schritt wird HTTPS für GitLab aktiviert.

GitLab Haupt-URL konfigurieren

Schritt 4 – Generieren Sie SSL Let’s encrypt und DHPARAM Zertifikat

In diesem Schritt werden wir das HTTPS-Protokoll für GitLab aktivieren. Ich werde ein kostenloses SSL-Zertifikat verwenden, das von let’s encrypt für den gitlab-Domainnamen bereitgestellt wird.

Installiere letsencrypt Kommandozeilen-Tool mit apt-Befehl.

sudo apt install letsencrypt -y

Wenn die Installation abgeschlossen ist, generieren Sie ein neues Zertifikat für den gitlab-Domänennamen mit dem folgenden Befehl.

letsencrypt certonly -d gitlab.hakase-labs.co

Geben Sie Ihre E-Mail-Adresse für die Benachrichtigung zur Verlängerung des SSL-Zertifikats ein.

SSL-Zertifikat auf Ubuntu 16.04 generieren

Wählen Sie’Einverstanden‘ für die Let’s Encrypt Nutzungsbedingungen und warten Sie.

Vereinbarung von Letsencrypt TOS

Wenn es fertig ist, sehen Sie das Ergebnis unten.

SSL Letsencrypt Zertifikat wurde generiert.

Neue Let’s encrypt Zertifikatsdateien für GitLab wurden generiert. Sie finden die Zertifikatsdateien im Verzeichnis’/etc/letsencrypt/live‘.

Erstellen Sie anschließend ein neues Verzeichnis namens’ssl‘ im Konfigurationsverzeichnis von GitLab.

mkdir -p /etc/gitlab/ssl/

Und erzeugen Sie dhparam pem-Dateien im ssl-Verzeichnis mit dem Befehl openssl.

sudo openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048

DHPARAM-Zertifikat mit openssl generieren

Ändern Sie nun die Berechtigungen der Zertifikatsdateien auf 600.

chmod 600 /etc/gitlab/ssl/*

Das SSL Let’s encrypt cert für GitLab und das DHPARAM-Zertifikat wurde generiert.

Schritt 5 – Nginx HTTPS für GitLab aktivieren

In diesem Stadium haben wir die Zertifikatsdateien von Letsencrypt im Verzeichnis’/etc/letsencrypt/live‘ und das DHPARAM-Zertifikat im Verzeichnis’/etc/gitlab/ssl‘.

In diesem Schritt werden wir ein GitLab konfigurieren, um unsere Zertifikatsdateien zu verwenden. Gehen Sie in das Verzeichnis’/etc/gitlab‘ und bearbeiten Sie die Konfiguration’gitlab.rb‘ mit vim.

cd /etc/gitlab/
vim gitlab.rb

Ändern Sie die externe URL so, dass sie’https‘ anstelle von’http‘ verwendet.

external_url 'https://gitlab.hakase-labs.co'

Fügen Sie dann die neue SSL-Konfiguration für gitlab wie unten beschrieben hinzu.

nginx['redirect_http_to_https'] = true
nginx['ssl_certificate'] = "/etc/letsencrypt/live/gitlab.hakase-labs.co/fullchain.pem"
nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/gitlab.hakase-labs.co/privkey.pem"
nginx['ssl_dhparam'] = "/etc/gitlab/ssl/dhparams.pem"

Hinweis:

Wir werden HTTP zu HTTPS Umleitung in gitlab aktivieren.

Speichern Sie die Datei und beenden Sie vim.

HTTPS auf GitLab aktivieren und Redirect HTTP auf HTTPS GitLab aktivieren.

Nun müssen wir den folgenden Befehl als root ausführen, um die neue gitlab-Konfiguration anzuwenden.

sudo gitlab-ctl reconfigure

Sie werden die Ergebnisse wie folgt sehen.

GitLab-Konfiguration übernehmen ist abgeschlossen.

Die HTTPS-Konfiguration für GitLab ist abgeschlossen.

Schritt 6 – UFW Firewall konfigurieren

In diesem Schritt werden wir die UFW-Firewall aktivieren. Es ist bereits auf dem System installiert, wir müssen nur den Dienst starten. Wir werden GitLab hinter der UFW-Firewall betreiben, daher müssen wir die HTTP- und HTTPS-Ports öffnen.

Aktivieren Sie die UFW-Firewall mit dem folgenden Befehl.

ufw enable

Der Befehl führt den ufw-Dienst aus und fügt ihn hinzu, um ihn automatisch zum Startzeitpunkt zu starten.

Als nächstes öffnen Sie neue Ports ssh, HTTP und HTTPS.

ufw allow ssh
ufw allow http
ufw allow https

HTTP und HTTPS UFW Firewall Ubuntu erlauben

Überprüfen Sie nun den Firewall-Status und stellen Sie sicher, dass die Ports ssh, http und https auf der Liste stehen.

ufw status

HTTP- und HTTPS-Ports sind konfiguriert.

Überprüfen der UFW-Regeln Ubuntu

Schritt 7 – Gitlab nach der Installation

GitLab wurde auf dem System installiert und läuft hinter der UFW-Firewall. In diesem Schritt werden wir einige schnelle Einstellungen vornehmen, wie z.B. das Ändern von Passwort, Benutzername und Profileinstellungen.

Öffnen Sie Ihren Webbrowser und geben Sie die gitlab-URL ein, meine ist’gitlab.hakase-labs.co‘. Sie werden zur HTTPS-Verbindung weitergeleitet.

GitLab Root-Passwort zurücksetzen

GitLab Standard-Passwort nach der Installation zurücksetzen

Melden Sie sich nun mit dem Benutzer’root‘ und Ihrem Passwort bei GitLab an.

GitLab Login als Standard-Benutzerstamm

Benutzername und Profil ändern

Klicken Sie oben rechts auf Ihr Profil und wählen Sie’Profileinstellungen‘.

GitLab-Standardprofil ändern

Tauschen Sie auf der Registerkarte Profil den Standardnamen mit Ihrem Namen und die E-Mail-Adresse mit Ihrer E-Mail-Adresse aus. Klicken Sie nun auf’Profil aktualisieren‘.

Standardbenutzername und E-Mail-Adresse für GitLab ändern

Klicken Sie auf den Tab’Konto‘, ändern Sie den Benutzernamen mit Ihrem eigenen Benutzernamen. Klicken Sie dann auf’Benutzername aktualisieren‘.

Chagne Standard-Benutzername gitLab

SSH-Schlüssel hinzufügen

Stellen Sie sicher, dass Sie bereits einen Schlüssel haben, wenn Sie keinen SSH-Schlüssel haben, können Sie damit mit dem folgenden Befehl generieren.

ssh-keygen

Und Sie erhalten zwei Schlüssel, ‚id_rsa‘ Ihren privaten Schlüssel und ‚id_rsa.pub‘ Ihren öffentlichen Schlüssel.

Neuen SSH-Schlüssel in Ubuntu generieren

Klicken Sie anschließend auf die Registerkarte’SSH Key‘, kopieren Sie den Inhalt der Datei’id_rsa.pub‘ und fügen Sie ihn in das Schlüsselfeld ein, und klicken Sie auf’Add Key‘.

SSH-Schlüssel zu GitLab hinzufügen

Ein neuer SSH-Schlüssel wurde hinzugefügt.

Registrieren Sie sich für Einschränkungen und Limit-Einstellungen.

Klicken Sie auf das Symbol „Admin-Bereich“, dann auf das Zahnradsymbol und wählen Sie „Einstellungen“.

GitLab-System konfigurieren

Unter’Konto- und Limiteinstellungen‘ – Sie können maximale Projekte pro Benutzer konfigurieren und unter’Anmeldeeinschränkungen‘ können Sie den Domänennamen Ihrer E-Mail zur Whitelist hinzufügen.

Und wenn alles vollständig ist, scrollen Sie nach unten und klicken Sie auf „Speichern“.

Konfigurieren der Limit-Einstellung und der Anmeldebeschränkungen GitLab

Die Grundkonfiguration von GitLab ist abgeschlossen.

Schritt 8 – Prüfung

Schließlich werden wir einige Tests durchführen, um sicherzustellen, dass unser GitLab-System ordnungsgemäß funktioniert.

Neues Projekt erstellen

Klicken Sie auf das Plus-Symbol oben, um ein neues Projekt-Repository zu erstellen. Geben Sie Ihren Projektnamen, Ihre Beschreibung und die Sichtbarkeitseinstellungen Ihres Projekts ein. Klicken Sie dann auf die Schaltfläche’Projekt erstellen‘.

GitLab Testing erstellt neues Projekt

Das neue Projekt wurde angelegt.

Test des ersten Commits und Push

Nachdem das Projekt „howtoforge“ erstellt wurde, werden Sie auf die Projektseite weitergeleitet. Beginnen Sie nun, neue Inhalte zum Repository hinzuzufügen. Stellen Sie sicher, dass Git auf Ihrem Computer installiert ist und richten Sie den globalen Benutzernamen und die E-Mail-Adresse für git mit dem folgenden Befehl ein.

git config --global user.name "hakase"
git config --global user.email "admin@hakase-labs.co"

Klonen Sie das Repository und fügen Sie eine README.md-Datei hinzu.

git clone https://hakase@gitlab.irsyadf.me/hakase/howtoforge.git
cd howtoforge/
vim README.md

Sie werden nach dem Benutzerpasswort „hakase“ gefragt. Bitte geben Sie das gleiche Passwort ein, das Sie beim ersten Zugriff auf GitLab verwendet haben.

Übertragen Sie eine neue Datei in das Howtoforge-Repository.

git add .
git commit -m 'Add README.md file by hakase-labs'

Als nächstes verschieben Sie die Änderung in das Repository auf dem GitLab-Server.

git push origin master

Geben Sie Ihr Passwort ein und drücken Sie die Eingabetaste, um fortzufahren. Sie werden das Ergebnis wie folgt sehen.

GitLab testet erstes Commit

Öffnen Sie nun das Howtoforge-Projekt in Ihrem Webbrowser, und Sie werden sehen, dass die neue Datei README.md zum Repository hinzugefügt wurde.

Neues GitLab Repository funktioniert

Gitlab wurde auf einem Ubuntu 16.04 Xenial Xerus Server installiert.

Präferenzen

Das könnte Dich auch interessieren …