GitLab Installations- und Konfigurationsanleitung

GitLab ist eine Open-Source-Anwendung, die man hauptsächlich für das Hosting von Git-Repositories verwendet, mit zusätzlichen entwicklungsspezifischen Funktionen wie der Verfolgung von Aufgaben. Sie wurde entwickelt, um auf Ihrer eigenen Infrastruktur gehostet zu werden, und bietet Flexibilität beim Einsatz als internes Repository für Ihr Entwicklungsteam, als öffentliche Schnittstelle für Benutzer oder als Möglichkeit für Mitwirkende, ihre eigenen Projekte zu hosten.

Voraussetzungen

Wenn Sie Ubuntu in der Version 16.04 oder darunter verwenden, empfehlen wir Ihnen, auf eine aktuellere Version zu aktualisieren, da Ubuntu für diese Versionen keinen Support mehr bietet. Diese Sammlung von Anleitungen hilft Ihnen beim Upgrade Ihrer Ubuntu-Version.

Um diesem Tutorial zu folgen, benötigen Sie:

  • Einen Server mit Ubuntu sowie einen Benutzer ohne Root-Rechte mit Sudo-Berechtigungen und eine aktive Firewall.
  • Die veröffentlichten Hardware-Anforderungen von GitLab empfehlen die Verwendung eines Servers mit mindestens:
    • 4 Kernen für Ihre CPU
    • 4 GB RAM für den Speicher

    Obwohl es möglich ist, RAM durch Swap-Speicher zu ersetzen, wird dies nicht empfohlen.

  • Einen Domainnamen, der auf Ihren Server zeigt.

Schritt 1 – Installation der Abhängigkeiten

Bevor Sie GitLab installieren, ist es wichtig, die Software zu installieren, die während der Installation und im laufenden Betrieb genutzt wird. Die benötigte Software kann aus den Standardpaket-Repositories von Ubuntu installiert werden.

Zuerst aktualisieren Sie den lokalen Paketindex:

Installieren Sie dann die Abhängigkeiten mit folgendem Befehl:

sudo apt install ca-certificates curl openssh-server postfix tzdata perl

Einige dieser Softwarepakete könnten bereits installiert sein. Wählen Sie bei der Installation von Postfix die Option „Internet Site“, wenn Sie dazu aufgefordert werden. Geben Sie im nächsten Bildschirm den Domainnamen Ihres Servers ein, um zu konfigurieren, wie das System E-Mails versendet.

Schritt 2 – Installation von GitLab

Mit den installierten Abhängigkeiten können Sie GitLab installieren. Dieser Prozess nutzt ein Installationsskript, um Ihr System mit den GitLab-Repositories zu konfigurieren.

Wechseln Sie zuerst in das Verzeichnis /tmp:

Laden Sie dann das Installationsskript herunter:

curl -LO https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh

Untersuchen Sie das heruntergeladene Skript, um sicherzustellen, dass Sie mit den auszuführenden Aktionen einverstanden sind:

Führen Sie das Installationsskript aus, sobald Sie mit dessen Sicherheit zufrieden sind:

Das Skript richtet Ihren Server so ein, dass die GitLab-eigenen Repositories verwendet werden. Sobald dies abgeschlossen ist, installieren Sie die GitLab-Anwendung mit apt:

Schritt 3 – Anpassen der Firewall-Regeln

Bevor Sie GitLab konfigurieren, stellen Sie sicher, dass Ihre Firewall-Regeln ausreichend permissiv sind, um Web-Traffic zuzulassen.

Prüfen Sie den aktuellen Status Ihrer aktiven Firewall mit folgendem Befehl:

Ausgabe:

Status: active

Um den Zugang zu Webdiensten zu ermöglichen, erlauben Sie HTTP- und HTTPS-Traffic:

sudo ufw allow http
sudo ufw allow https
sudo ufw allow OpenSSH

Prüfen Sie den Firewall-Status erneut:

Schritt 4 – Bearbeiten der GitLab-Konfigurationsdatei

Bevor Sie die Anwendung verwenden, aktualisieren Sie die Konfigurationsdatei und führen Sie einen Neukonfigurationsbefehl aus. Öffnen Sie die Konfigurationsdatei von GitLab:

sudo nano /etc/gitlab/gitlab.rb

Suchen Sie die Zeile external_url und aktualisieren Sie sie mit Ihrem Domainnamen:

external_url 'https://your_domain'

Speichern Sie die Änderungen und führen Sie den Neukonfigurationsbefehl aus:

Schritt 5 – Erste Konfiguration über die Weboberfläche

Nachdem GitLab läuft, können Sie die Anwendung über die Weboberfläche initial konfigurieren.

Rufen Sie den Domainnamen Ihres GitLab-Servers in Ihrem Webbrowser auf:

https://your_domain

Bei Ihrem ersten Besuch werden Sie mit einer Login-Seite begrüßt. Melden Sie sich als root an.

GitLab generiert ein sicheres Initialpasswort für Sie, das in einer Datei gespeichert ist, auf die ein administrativer sudo-Benutzer zugreifen kann:

sudo nano /etc/gitlab/initial_root_password

Verwenden Sie das generierte Passwort, um sich anzumelden. Nach der Anmeldung gelangen Sie zum GitLab-Dashboard.

Eine der ersten Aufgaben sollte das Aktualisieren Ihres Passworts sein. Gehen Sie hierzu wie folgt vor:

  • Klicken Sie auf das Benutzersymbol in der oberen rechten Ecke und wählen Sie Edit Profile.
  • Gehen Sie in der linken Navigationsleiste zu Password.
  • Aktualisieren Sie Ihr Passwort und klicken Sie auf Save password.

Nach dem Speichern werden Sie ausgeloggt und aufgefordert, sich mit Ihrem neuen Passwort erneut anzumelden.

Schritt 6 – Einschränken oder Deaktivieren öffentlicher Registrierungen

Standardmäßig kann sich jeder auf Ihrer GitLab-Instanz registrieren. Um diese Einstellungen anzupassen:

  • Gehen Sie in den Bereich Admin, indem Sie auf das Hamburger-Menü in der oberen Navigationsleiste klicken.
  • Klicken Sie in der linken Navigationsleiste auf Settings.

Registrierungen deaktivieren

Wenn Sie Registrierungen vollständig deaktivieren möchten, gehen Sie zum Abschnitt Sign-up Restrictions und deaktivieren Sie das Kontrollkästchen Sign-up enabled. Klicken Sie auf Save changes.

Registrierungen auf bestimmte Domains beschränken

Wenn Ihre Organisation E-Mail-Adressen bereitstellt, die mit einer bestimmten Domain verknüpft sind, können Sie Registrierungen auf diese Domains beschränken:

  • Wählen Sie das Kontrollkästchen Send confirmation email on sign-up.
  • Fügen Sie Ihre Domain(s) in das Feld Whitelisted domains for sign-ups ein, jeweils eine Domain pro Zeile. Verwenden Sie ein Sternchen (*) für Wildcards, falls erforderlich.

Klicken Sie auf Save changes, um die Änderungen zu speichern.

Einschränkung der Projekt-Erstellung

Standardmäßig können neue Benutzer bis zu 10 Projekte erstellen. Um dies einzuschränken:

  • Gehen Sie zum Abschnitt Account and Limit Settings.
  • Setzen Sie das Feld Default projects limit auf 0, um zu verhindern, dass neue Benutzer Projekte erstellen.

Klicken Sie auf Save changes, nachdem Sie die Einstellungen aktualisiert haben.

Erneuerung von Let’s Encrypt-Zertifikaten

Standardmäßig erneuert GitLab die Let’s Encrypt-Zertifikate jeden vierten Tag nach Mitternacht. Um diesen Zeitplan anzupassen:

    1. Öffnen Sie die GitLab-Konfigurationsdatei:

sudo nano /etc/gitlab/gitlab.rb

    1. Finden und entfernen Sie die Kommentare (#) vor den folgenden Zeilen, und passen Sie den Zeitplan nach Ihren Wünschen an:

letsencrypt['auto_renew'] = true
letsencrypt['auto_renew_hour'] = "12"
letsencrypt['auto_renew_minute'] = "30"
letsencrypt['auto_renew_day_of_month'] = "*/7"

  1. Speichern und schließen Sie die Datei. Die Änderungen treten beim nächsten Erneuerungszyklus in Kraft.

Um die automatische Erneuerung zu deaktivieren, setzen Sie letsencrypt['auto_renew'] auf false.

Fazit

Sie haben nun eine funktionierende GitLab-Instanz auf Ihrem eigenen Server. Sie können damit beginnen, neue Projekte zu importieren oder zu erstellen und den entsprechenden Zugriff für Ihr Team zu konfigurieren. GitLab fügt regelmäßig neue Funktionen hinzu und aktualisiert die Plattform. Besuchen Sie die Projekt-Homepage, um sich über Verbesserungen und wichtige Hinweise auf dem Laufenden zu halten.

Kostenlosen Account erstellen

Registrieren Sie sich jetzt und erhalten Sie Zugang zu unseren Cloud Produkten.

Das könnte Sie auch interessieren:

centron Managed Cloud Hosting in Deutschland

Dimensionsreduktion – IsoMap

Python
Dimensionsreduktion – IsoMap Content1 Einführung2 Voraussetzungen für die Dimensionsreduktion3 Warum geodätische Distanzen für Dimensionsreduktion besser sind4 Dimensionsreduktion: Schritte des IsoMap-Algorithmus5 Landmark IsoMap6 Schwächen von Isomap7 Fazit zur Dimensionsreduktion Einführung Isomap…
centron Managed Cloud Hosting in Deutschland

Was jeder ML/AI-Entwickler über ONNX wissen sollte

Python
Was jeder ML/AI-Entwickler über ONNX wissen sollte Content1 Einleitung2 ONNX Überblick3 Voraussetzungen für ML/AI-Entwickler4 ONNX in der Praxis5 Fazit für ML/AI-Entwickler Einleitung Das Open Neural Network Exchange Format (ONNX) ist…