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

So richten Sie Gitlab für Continuous Integration and Deployment auf CentOS ein

In diesem Tutorial erkläre ich, wie man einen lokalen Gitlab Server für den CI (Continuos Integration) / CD (Continuous Deployment) Betrieb einrichtet. Wie alle, die es noch nicht wissen, ist GitLab eine vollständige DevOps-Plattform, die als einzelne Anwendung bereitgestellt wird. Von der Projektplanung und Quellcodeverwaltung über CI/CD bis hin zu Überwachung und Sicherheit. Es ermöglicht Teams, zusammenzuarbeiten und in einer einzigen Konversation zu arbeiten, anstatt mehrere Threads über mehrere Tools hinweg zu verwalten. Durch die Bereitstellung eines einzigen Daten-Repositorys, einer Benutzeroberfläche und eines Autorisierungsmodells während des gesamten DevOps-Lebenszyklus können Teams erheblich zusammenarbeiten, die Zykluszeit verkürzen und sich ausschließlich auf die schnelle Erstellung jeder Anwendung konzentrieren.

Da jeder Geschäftsansatz größer und umfassender wird, müssen alle Produkte herausragendere Eigenschaften aufweisen als ihre Konkurrenten. Um dies zu erreichen, müssen mehrere Module eingeführt und entwickelt werden, sobald sie bereit sind, sie müssen schnell auf den Markt gebracht und vollständig getestet und verifiziert werden. Auf diese Weise würde es wirklich helfen, den Meilenstein zu erreichen, wenn Gitlab die einzige Anwendungsquelle wäre, die den Prozess des Übergangs zur DevOps-Praxis erleichtern könnte.

1. Wie funktionieren Continuous Integration und Continuous Deployment?

Es gibt eine logische Abfolge möglicher Maßnahmen, die während des gesamten Lebenszyklus des Softwareentwicklungsprozesses ergriffen werden können, wobei GitLab als Plattform für Ihren Code verwendet wird. Ziel ist es, die Teams von der ersten Phase der Einführung eines neuen Produkts bis zur letzten Phase der Einführung in die Produktion durchgängig und effektiv zu unterstützen. Das folgende Bild zeigt eine Zusammenfassung des Arbeitsablaufs:

Da der Umfang von DevOps recht groß ist, konzentriert sich dieses Tutorial auf die Einrichtung des Gitlab-Servers unter lokalen Bedingungen. Wir werden die Gitlab Community Edition verwenden, um sie in unserer lokalen Umgebung einzurichten.

2. Installationsphase

In der Installationsphase beginnen wir zunächst damit, den Server mit Voraussetzungen einzurichten, wobei wir davon ausgehen, dass jeder Server eine minimale Serverkonfiguration hat. Unten sind die Schritte:

 [[email protected] ~]# cat /etc/resolv.conf 
[[email protected] ~]# yum updateinstall -y curl policycoreutils-python openssh-server

Obiges ist optional, nur um sicherzustellen, dass unsere Installation und Überprüfung reibungslos funktionieren. Sobald die Installation abgeschlossen ist, sehen Sie den folgenden Screenshot

Starten Sie dann den Postfix-Dienst wie erforderlich. Unten sind die Befehle.

 [[email protected] ~]# systemctl start postfix 
[[email protected] ~]# systemctl status postfix
[[email protected] ~]# systemctl enable postfix

Sobald Sie fertig sind, sehen Sie den folgenden Screenshot



Als nächstes müssen wir wget installieren, um das von GitLab selbst bereitgestellte Automatisierungsskript zur Installation zu verwenden. Sie können die Installation auch auf andere Weise durchführen, z. B. mit Curl usw. Für diese Übung werde ich stattdessen wget verwenden, um das Skript herunterzuladen. Sobald wget-Pakete installiert sind, laden wir das Skript von hier herunter und legen es auf unserem lokalen Server ab. Unten sind die Schritte:

 [[E-Mail-geschützt] ~]# yum install -y wget 
[[E-Mail-geschützt] ~]# wget https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script .rpm.sh
[[E-Mail-geschützt] ~]# chmod +x script.rpm.sh
[[E-Mail-geschützt] ~]# ./script.rpm.sh

Der Prozess wird wie folgt sein:

Als Nächstes beginnen wir mit der Vorbereitung des GitLab-Dienstes und seiner konfigurierten Abhängigkeiten. Die Schritte sind wie folgt:

 [[email protected] ~]# EXTERNAL_URL="http://10.124.12.133:80" 
[[email protected] ~]# echo $EXTERNAL_URL
http://10.124.12.133
[[email protected] ~]# yum install -y gitlab-ce

Sobald alles erledigt ist, sehen Sie den Fortschritt wie unten gezeigt

Toll! Jetzt ist alles in der Hand, lassen Sie uns mit der Installation des Dienstes und seiner Abhängigkeiten fortfahren. Da GitLab eine solide Anwendung für DevOps war, die zusammen entwickelt werden sollte, wird es mehrere Pakete geben und die Konfiguration wird konfiguriert. Daher ist es normal, dass die benötigte Zeit länger ist als bei einer normalen Dienstinstallation. Bevor Sie mit der Installation beginnen, lassen Sie uns bestätigen, dass die Haupt-URL wie erwartet konfiguriert wurde. Unten sind die Schritte:-

 [[email protected] ~]# cat /etc/gitlab/gitlab.rb 
external_url='http://10.124.12.133'

[[email protected] ~] # gitlab-ctl neu konfigurieren

Wenn der Fortschritt reibungslos verläuft, erhalten Sie wie im folgenden Screenshot

Jetzt, da alles mit dem Installationsteil fertig ist, machen wir den letzten Schliff, der es ermöglicht, dass der Port für Gitlab funktioniert. Unten sind die Schritte:-

 [[email protected] ~]# firewall-cmd --permanent --add-service ssh 
[[email protected] ~]# firewall-cmd --permanent --add-service http
[[email protected] ~]# firewall-cmd --reload
[[email protected] ~]# iptables -L -n

Unten sehen Sie den Screenshot

Jetzt haben wir so ziemlich alles für die GitLab-Installation getan, jetzt können wir uns bei unserem eigenen GitLab-Server anmelden und das Projekt nach Bedarf konfigurieren. Als Endergebnis können Sie Ihren GitLab-Dienst per Browser über die zuvor konfigurierte URL anzeigen, in unserem Fall http://10.124.12.133 . Es leitet Sie automatisch zur Hauptseite weiter und legt dann Ihr anfängliches Admin-Passwort nach Bedarf fest. In diesem Fall ist der standardmäßige Admin-Benutzer root . Unten sehen Sie das Beispiel:-

3. Testphase

Wenn alles erledigt ist, fungieren wir als Benutzer in einem Team, das ein Projekt definiert, das GitLab als Projektentwicklungs-Repository verwendet. Lassen Sie uns zuerst ein neues Projekt erstellen, klicken Sie auf Projekt erstellen und definieren Sie die Details nach Bedarf. Beispiele sind wie folgt:-

Sobald Sie fertig sind, werden Sie wie unten beschrieben auf die Hauptseite des Projekts weitergeleitet

Als Projekt werden nun mehrere Benutzer zu diesem Repository beitragen. Um das Szenario neu zu erstellen, erstellen wir einen Benutzer, der später zu diesem Projekt beitragen wird. Gehen Sie zurück zur Hauptseite und klicken Sie auf Personen hinzufügen . Sie werden zur Mitgliedererstellungsseite wie unten umgeleitet. Erstellen Sie einen Benutzer und füllen Sie ihn nach Bedarf aus.

Wenn Sie fertig sind, gehen Sie zurück zu Ihrer Hauptprojektseite, gehen Sie zu Einstellungen und klicken Sie auf Mitglieder . Unten sehen Sie das Beispiel:-

Sie gelangen auf die Seite Projektmitglied, schließen den neuen Benutzer ein, den Sie erstellt haben, und definieren die Rollen, die dem Benutzer wie im folgenden Beispiel zugewiesen werden sollen. Für jede Definition der Rollen und Privilegien können Sie auf Weiterlesen klicken für weitere Details

Sobald Sie fertig sind, sehen Sie die Liste der gewährten Teammitglieder wie im folgenden Beispiel:-

Lassen Sie uns nun den Projekt-Workflow-Beitrag testen, indem Sie von einem anderen Server aus darauf zugreifen und sich als der neue Benutzer anmelden, den wir erstellt haben, und eine neue Datei erstellen, die in das Projekt übernommen werden soll. Nehmen wir zunächst die URL für das Projekt, das von einem anderen Server oder einer anderen Arbeitsstation geklont werden soll. Sie können den Projekt-URL-Link aus dem folgenden Beispiel nehmen:-

Wenn alles vorbereitet ist, melden wir uns bei einer Test-Workstation an und klonen das Projekt, damit es von verschiedenen Benutzern aufgerufen werden kann. Unten sind die Schritte:-

 [[email protected] ~]# yum install -y git 
[[email protected] ~]# git clone http://10.124.12.133/root/my-first-project.git

Sie müssen dem Benutzer Zugriff gewähren, um das Projekt zu klonen, verwenden Sie den gerade neu erstellten Benutzer wie unten gezeigt:-

Sobald dies erledigt ist, wird ein neuer Ordner mit dem Projektnamen unter Ihrer Arbeitsstation erstellt. Gehen Sie nun in den Ordner und erstellen Sie eine leere Datei. Dies dient nur zum Testen , das Projekt kann von beliebigen Teammitgliedern von jedem Arbeitsplatz aus beigesteuert werden und das Projekt - Repository wird immer synchron aktualisiert . Unten sind die Schritte:-

 [[email protected] ~]# cd ls 
anaconda-ks.cfg mein-erstes-projekt
[[email protected] ~]# cd mein-erstes-projekt/
[[email protected] my-first-project]# ls
README.md
[[email protected] my-first-project]# touch myfile.txt

Nachdem alles erledigt ist, übernehmen wir unsere Änderungen, damit sie mit dem Haupt-Repository des Projekts synchronisiert werden. Unten sind die Schritte:-

 [[email protected] my-first-project]# git add myfile.txt 
[[email protected] my-first-project]# git commit -m "added new file"
[ [email protected] my-first-project]# git push -u origin master

Sobald der obige Befehl ausgeführt wurde, wird der Prozess wie im folgenden Beispiel angezeigt:-

Toll! Wenn alles erledigt ist, gehen wir zurück zum Browser und aktualisieren die Seite. Sie werden feststellen, dass die neue Datei von Benutzer shahril übergeben wurde werden auf der Hauptprojektseite angezeigt


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

  2. So installieren Sie ownCloud auf CentOS 7

  3. So installieren Sie Drupal 8 auf CentOS 7

  4. So installieren Sie Single Node OpenStack unter CentOS 7

  5. So installieren und konfigurieren Sie Gitlab unter CentOS 8

So installieren und konfigurieren Sie OTRS (Ticketing Tool) unter CentOS 7 / RHEL 7

So installieren und konfigurieren Sie GitLab CE unter CentOS 7

So installieren Sie Ansible AWX unter CentOS 7

So installieren und konfigurieren Sie GitLab CE unter CentOS 8

So installieren und konfigurieren Sie Gitlab CE Server auf Centos 8

So richten Sie GitLab unter CentOS 8 ein