GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren und konfigurieren Sie GitLab CE unter CentOS 7

GitLab ist ein Open-Source-Repository-Manager, der auf Rails basiert und von GitLab Inc. entwickelt wurde. Es ist ein webbasierter Git-Repository-Manager, mit dem Ihr Team beim Codieren, Testen und Bereitstellen von Anwendungen zusammenarbeiten kann. GitLab bietet mehrere Funktionen, darunter Wikis, Problemverfolgung, Codeüberprüfungen und Aktivitätsfeeds.

GitLab Inc bietet 4 Produkte an:

  1. Gitlab CE (Community Edition) – selbst gehostet und kostenlos; Unterstützung aus dem Community-Forum.
  2. Gitlab EE (Enterprise Edition) – selbst gehostet und kostenpflichtig; kommt mit zusätzlichen Features.
  3. GitLab.com - SaaS und kostenlos.
  4. GitLab.io - Private GitLab-Instanz, verwaltet von GitLab Inc.

In diesem Tutorial besprechen wir die schrittweise Installation von GitLab CE (Community Edition) auf CentOS 7 Server mit 4 GB RAM. In einem unserer vorherigen Tutorials haben wir die GitLab-Installation manuell durchgeführt. Aber hier verwenden wir das von GitLab bereitgestellte „Omnibus“-Paket für unsere Installation.

Was wir tun werden

  1. Pakete installieren
  2. Installieren Sie GitLab
  3. GitLab-URL konfigurieren
  4. SSL Let's encrypt und DHPARAM-Zertifikat generieren
  5. Nginx-HTTPS für GitLab aktivieren
  6. Firewalld konfigurieren
  7. Führen Sie die GitLab-Installation durch
  8. Testen

Voraussetzungen

  • CentOS 7-Server – 64 Bit
  • RAM mindestens 2 GB
  • Root-Rechte

Schritt 1 - Pakete installieren

In diesem Schritt werden wir einige Pakete herunterladen/installieren, die für die GitLab-Installation benötigt werden. Wir werden curl verwenden, um das Repository-Installationsprogramm, policycoreutils für SELinux-Manager, OpenSSH und postfix als lokalen SMTP-Server herunterzuladen.

Installieren Sie alle diese Pakete mit dem folgenden yum-Befehl.

yum -y install curl policycoreutils openssh-server openssh-clients postfix

Starten Sie danach die Dienste ssh und postfix.

systemctl start sshd
systemctl start postfix

Aktivieren Sie sie jetzt so, dass sie beim Booten automatisch ausgeführt werden.

systemctl enable sshd
systemctl enable postfix

Alle für die GitLab-Installation erforderlichen Pakete sind nun auf dem Server installiert.

Schritt 2 – GitLab installieren

GitLab bietet ein Installationsprogramm zum Hinzufügen des GitLab CE-Repositorys. Laden Sie das Installationsprogramm mit curl herunter und führen Sie das Skript (wie unten gezeigt) aus, um ein neues GitLab CE-Repository hinzuzufügen.

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

Das GitLab CE-Repository wurde dem System hinzugefügt.

Installieren Sie nun GitLab mit dem folgenden yum-Befehl.

yum -y install gitlab-ce

Wenn die Installation abgeschlossen ist, erhalten Sie das unten gezeigte Ergebnis.

Damit ist GitLab CE nun auf dem CentOS 7 Server installiert.

Schritt 3 - GitLab-URL konfigurieren

Für dieses Tutorial verwenden wir einen Domänennamen für GitLab. Insbesondere verwenden wir den Domänennamen „gitlab.hakase-labs.co.“

Wechseln Sie in das GitLab-Konfigurationsverzeichnis „/etc/gitlab“ und bearbeiten Sie dann die Konfigurationsdatei „gitlab.rb“ mit dem vim-Editor.

cd /etc/gitlab/
vim gitlab.rb

Ändern Sie die Zeile external_url mit dem Domänennamen „gitlab.hakase-labs.co '.

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

Speichern Sie die Änderungen und beenden Sie vim.

Schritt 4 – SSL Let’s encrypt und DHPARAM-Zertifikat generieren

Für die grundlegende Sicherheitsebene verwenden wir SSL für unsere GitLab-Site. Wir werden ein kostenloses SSL-Zertifikat von Letsencrypt verwenden und ein DHPARAM-Zertifikat generieren, um eine zusätzliche Sicherheitsebene hinzuzufügen.

Um das Letsencrypt-Zertifikat zu generieren, müssen wir das letsencrypt-Befehlszeilentool installieren, das im Repository verfügbar ist.

Installieren Sie das Letsencrypt-Tool unter CentOS 7 mit dem folgenden Befehl yum.

yum -y install letsencrypt

Generieren Sie nach Abschluss der Installation ein neues SSL-Zertifikat letsencrypt mit dem folgenden Befehl.

letsencrypt certonly --standalone -d gitlab.hakase-labs.co

Hinweis: Stellen Sie beim Generieren von SSL Letsencrypt sicher, dass Ihr HTTP- und HTTPS-Port nicht von der Firewall blockiert wird.

Geben Sie Ihre E-Mail-Adresse für die Verlängerungsbenachrichtigung ein, geben Sie dann „A“ für die Nutzungsvereinbarung von Letsencrypt ein und geben Sie schließlich „N“ ein und drücken Sie erneut die Eingabetaste.

Und wenn Sie das unten gezeigte Ergebnis sehen, bedeutet dies, dass Ihr Zertifikat für den Domainnamen generiert und im Verzeichnis „/etc/letsencrypt/live“ gespeichert wurde.

Erstellen Sie als Nächstes ein neues „ssl“-Verzeichnis unter dem GitLab-Konfigurationsverzeichnis „/etc/gitlab/“.

mkdir -p /etc/gitlab/ssl/

Generieren Sie nun die PEM-Datei des DHPARAM-Zertifikats mit OpenSSL. Das größere Bit ist sicherer.

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

Und nachdem das DHPARAM-Zertifikat generiert wurde, ändern Sie die Berechtigung der Zertifikatsdatei auf 600.

chmod 600 /etc/gitlab/ssl/*

Das SSL Letsencrypt- und DHPARAM-Zertifikat für die GitLab-Installation wurde also generiert.

Schritt 5 – Aktivieren Sie Nginx HTTPS für GitLab

Zu diesem Zeitpunkt haben wir bereits kostenlose SSL-Zertifikatsdateien von Letsencrypt und ein DHPARAM-Zertifikat, das mit dem OpenSSL-Befehl generiert wird. Und in diesem Schritt aktivieren wir HTTPS für die GitLab-Site. Wir aktivieren HTTPS und zwingen HTTP zur HTTPS-Verbindung.

Gehen Sie zunächst in das GitLab-Konfigurationsverzeichnis und bearbeiten Sie die Konfigurationsdatei ‚gitlab.rb‘.

cd /etc/gitlab/
vim gitlab.rb

Und ändern Sie HTTP in HTTPS in der Zeile external_url.

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

Fügen Sie dann die folgende Konfiguration unter der Zeilenkonfiguration „external_url“ ein.

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"

Speichern Sie die Änderungen und beenden Sie vim.

Wenden Sie schließlich die GitLab-Konfiguration mit dem folgenden Befehl an.

gitlab-ctl reconfigure

Und wenn alles fertig ist, sollten Sie das unten gezeigte Ergebnis erhalten.

Schritt 6 – Konfigurieren Sie Firewalld

In diesem Tutorial führen wir GitLab unter der Firewall Firewalld aus. Stellen Sie also sicher, dass es auf dem System installiert ist. Wenn Sie das Paket nicht haben, können Sie es mit dem folgenden Befehl installieren.

yum -y install firewalld

Starten Sie firewalld und aktivieren Sie es so, dass es beim Booten automatisch mit systemctl-Befehlen ausgeführt wird, wie unten gezeigt.

systemctl start firewalld
systemctl enable firewalld

Öffnen Sie als Nächstes neue Ports für unsere Dienste. Wir werden SSH-, HTTP- und HTTPS-Ports für unsere GitLab-Konfiguration öffnen. Führen Sie die folgenden Firewall-cmd-Befehle aus, um die Ports zu öffnen.

firewall-cmd --permanent --add-service ssh
firewall-cmd --permanent --add-service http
firewall-cmd --permanent --add-service https

Laden Sie nun die Firewall neu und überprüfen Sie die Firewalld-Konfiguration. Stellen Sie sicher, dass SSH, HTTP und HTTPS auf der Liste stehen.

firewall-cmd --reload
firewall-cmd --list-all

Damit ist die Firewalld-Konfiguration für GitLab abgeschlossen.

Schritt 7 - Installation durchführen

GitLab wurde also im System installiert und läuft unter der Firewalld-Firewall. In diesem Schritt werden wir nach der Installation von GitLab auf dem Server einige Schnelleinstellungen vornehmen.

GitLab-Root-Passwort zurücksetzen

Öffnen Sie Ihren Webbrowser und geben Sie die Gitlab-URL „gitlab.hakase-labs.co“ ein. Sie werden auf die HTTPS-Verbindung umgeleitet. Ändern Sie das Root-Passwort durch Ihr eigenes Passwort und klicken Sie zur Bestätigung auf die Schaltfläche „Passwort ändern“.

Jetzt können Sie sich mit dem Standardbenutzer „root“ und Ihrem eigenen Passwort beim GitLab-Dashboard anmelden.

Profil und Benutzernamen ändern

Nachdem Sie sich beim GitLab-Dashboard angemeldet haben, klicken Sie oben rechts auf Ihr Symbolprofil und dann auf das Symbol „Einstellungen“, um Ihr Profil einzurichten.

Ändern Sie auf der Registerkarte "Profil" Ihren Namen und Ihre E-Mail-Adresse und klicken Sie dann unten zur Bestätigung auf die Schaltfläche "Profileinstellungen aktualisieren".

Wechseln Sie als Nächstes zur Registerkarte „Konto“ und ändern Sie den Standard-Root-Benutzernamen durch Ihren eigenen Benutzernamen. Klicken Sie dann auf die Schaltfläche „Benutzernamen aktualisieren“.

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 einen mit dem folgenden Befehl generieren.

ssh-keygen

Und Sie erhalten zwei Schlüssel im Verzeichnis ~/.ssh/. „id_rsa“ wäre Ihr privater Schlüssel und „id_rsa.pub“ wäre Ihr öffentlicher Schlüssel.

Kehren Sie als Nächstes zum Webbrowser zurück und klicken Sie auf die Registerkarte „SSH-Schlüssel“. Kopieren Sie den Inhalt der Datei „id_rsa.pub“, fügen Sie ihn in das Schlüsselfeld ein und klicken Sie auf „Schlüssel hinzufügen“.

Damit wurde der SSH-Schlüssel aktualisiert.

Anmeldebeschränkungen und Limiteinstellungen

Klicken Sie auf das Symbol „Verwaltungsbereich“ und dann auf das Zahnradsymbol und wählen Sie „Einstellungen“.

Im Abschnitt „Konto- und Limiteinstellungen“ können Sie das maximale Projekt pro Benutzer konfigurieren. Und im Abschnitt „Anmeldebeschränkungen“ können Sie den Domänennamen Ihrer E-Mail-Adresse zum weißen Listenfeld hinzufügen.

Nachdem dies alles erledigt ist, scrollen Sie nach unten und klicken Sie auf „Speichern“.

Das ist es. Die grundlegende GitLab-Konfiguration ist abgeschlossen.

Schritt 8 – Testen

Jetzt werden wir einige Tests mit unserem selbst gehosteten GitLab durchführen.

Neues Projekt erstellen

Klicken Sie oben rechts auf das Plus-Symbol, um ein neues Projekt-Repository zu erstellen.

Geben Sie Ihren Projektnamen, Ihre Beschreibung und die Sichtbarkeitseinstellungen für Ihr Projekt ein. Klicken Sie dann auf die Schaltfläche „Projekt erstellen“.

Damit ist das Projekt erstellt.

Erstes Commit testen

Nachdem Ihr Projekt erstellt wurde (in unserem Fall howtoforge), werden Sie auf die Projektseite weitergeleitet. Beginnen Sie nun mit dem Hinzufügen neuer Inhalte zum Repository.

Stellen Sie sicher, dass Git auf Ihrem Computer installiert ist.

Für diesen Test müssen wir ein Git-Konto auf dem Computer einrichten, was Sie mit den folgenden Befehlen tun können:

git config --global user.name "hakase"
git config --global user.email "[email protected]"

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

git clone https://[email protected]/hakase/howtoforge.git
cd howtoforge/
vim README.md

Sie werden nach dem Hakase-Passwort gefragt. Bitte geben Sie das gleiche Passwort ein, das wir beim ersten Zugriff auf GitLab verwendet haben, und fügen Sie dann neue Inhalte zur Datei README.md hinzu.

Übertragen Sie neue Änderungen an das Repository mit den folgenden Befehlen.

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

Als nächstes pushen Sie das Repository auf den GitLab-Server.

git push origin master

Geben Sie Ihr Passwort ein und drücken Sie die Eingabetaste, um fortzufahren. Sie sollten das unten gezeigte Ergebnis sehen.

Öffnen Sie nun das Projekt (in unserem Fall howtoforge) in Ihrem Webbrowser und Sie werden sehen, dass eine neue README.md-Datei zum Repository hinzugefügt wurde.

Dies bestätigt also, dass Gitlab erfolgreich auf Ubuntu CentOS 7 mit 4 GB Arbeitsspeicher installiert wurde.


Cent OS
  1. So installieren und konfigurieren Sie Nginx unter CentOS 7

  2. So installieren und konfigurieren Sie Redis unter CentOS 7

  3. So installieren und konfigurieren Sie GitLab unter CentOS 7

  4. So installieren und konfigurieren Sie Gitlab unter CentOS 8

  5. So installieren und konfigurieren Sie CyberPanel unter CentOS 8

So installieren und konfigurieren Sie ownCloud auf CentOS 7

So installieren Sie Gitlab unter CentOS 8

So installieren und konfigurieren Sie Samba unter CentOS 8

So installieren und konfigurieren Sie Fail2ban unter CentOS 8

So installieren und konfigurieren Sie HAproxy unter CentOS 6

So installieren und konfigurieren Sie GlusterFS unter CentOS 7/CentOS 8