Sind Sie viel Zeit damit verbracht, Code in Ihrer Infrastruktur mit vielen Schritten und Software bereitzustellen? Machen Sie sich keine Sorgen, Sie sind hier genau richtig, um zu lernen, wie Sie Jenkins, das am häufigsten verwendete Open-Source-Tool, installieren können.
In diesem Tutorial erfahren Sie, wie Sie Jenkins auf einer Ubuntu-Maschine installieren können, damit Sie Code mit nur einem Klick erstellen und bereitstellen können.
Lesen Sie weiter und beginnen Sie mit der Installation!
Voraussetzungen
Dieser Beitrag wird ein schrittweises Tutorial sein. Um mitzumachen, stellen Sie sicher, dass Sie eine Ubuntu-Maschine haben. Dieses Tutorial verwendet Ubuntu 18.04 mit installiertem Apache.
Installation von Java Version 11 auf einer Ubuntu-Maschine
Jenkins ist ein Continuous Integration (CI) und Continuous Deployment (CD) Tool, das in verschiedenen Servlet-Containern ausgeführt werden kann, wie z.B. Apache Tomcat oder GlassFish. Aber für diese Demo wird Jenkins auf seinem integrierten Java-Servlet-Container-Server ausgeführt.
Es gibt mehrere Java-Implementierungen, die Sie für die Arbeit mit Jenkins verwenden können, aber OpenJDK ist die beliebteste, die Sie in diesem Tutorial installieren und verwenden werden.
1. Melden Sie sich bei Ihrer Ubuntu-Maschine mit Ihrem bevorzugten SSH-Client an.
2. Führen Sie anschließend die folgenden Befehle aus, um ein Verzeichnis mit dem Namen ~/install_jenkins_demo zu erstellen und in dieses Verzeichnis zu wechseln.
3. Führen Sie den apt install
-Befehl unten aus, um Java auf Ihrer Maschine zu installieren.

4. Führen Sie schließlich den folgenden Befehl aus, um die Version von Java auf Ihrem Computer zu überprüfen. Dadurch stellen Sie sicher, dass Sie Java erfolgreich installiert haben.

Installieren Sie Jenkins auf einer Ubuntu 18.04 LTS-Instanz
Jetzt, da Sie Java auf dem Ubuntu-Rechner installiert haben, ist es an der Zeit, Jenkins auf Ihrem Computer zu installieren. Die Installation von Jenkins ist ziemlich ähnlich wie die Installation anderer Pakete auf Ihrem Computer.
Vorausgesetzt, Sie sind immer noch im SSH-Client angemeldet:
1. Führen Sie zunächst den apt update
Befehl aus, um Ihre Systempakete zu aktualisieren.
2. Führen Sie anschließend den unten stehenden wget
Befehl aus, um den Jenkins-Public Key zu Ihrem System hinzuzufügen.
Das Hinzufügen des öffentlichen Schlüssels ermöglicht es der Jenkins-Website, das offizielle Jenkins-Repository oder benötigte Pakete herunterzuladen.
3. Führen Sie die folgenden Befehle aus, um das offizielle Jenkins-Repository zu Ihrem System hinzuzufügen und Ihr System zu aktualisieren.

4. Führen Sie nun den folgenden Befehl aus, um das Jenkins
-Paket zu installieren
.

5. Führen Sie abschließend den Befehl service
unten aus, um den Status des Jenkins-Dienstes zu überprüfen. # Validieren des Jenkins-Dienstes auf der Ubuntu-Maschine service jenkins status
Wie unten zu sehen ist, zeigt der Status an, dass der Jenkins-Dienst aktiv ist.

Konfigurieren einer Jenkins-Instanz
Sie sind jetzt halbwegs erfolgreich mit der Installation von Jenkins. Bevor Sie jedoch tatsächlich damit beginnen können, müssen Sie es mit grundlegenden Annehmlichkeiten einrichten. Wie? Der erste Schritt bei der Einrichtung von Jenkins besteht darin, den neu installierten Jenkins zu entsperren.
Angenommen, Sie sind immer noch im SSH-Client angemeldet:
1. Öffnen Sie Ihren bevorzugten Browser und navigieren Sie zur IP-Adresse des Servers gefolgt von Port 8080 wie jenkins-ip:8080. Nach dem Navigieren zum Link müssen Sie Jenkins entsperren, indem Sie das Administratorkennwort angeben. Das Administratorkennwort befindet sich im Verzeichnis /var/lib/jenkins/secrets/initialAdminPassword
auf dem Server (Schritt zwei).

2. Führen Sie den Befehl cat
unten aus, um das Administratorpasswort auf Ihrem Computer aus dem Verzeichnis /var/lib/jenkins/secrets/initialAdminPassword
hinzuzufügen.
Wie unten zu sehen ist, ist die riesige Zeichenfolge im Ausgabefenster das Administratorpasswort. Notieren Sie sich das Administratorpasswort, da Sie es benötigen, um Jenkins zu entsperren (Schritt drei).

3. Wechseln Sie zurück zu Ihrem Webbrowser (Jenkins entsperren Seite) und geben Sie das Administratorpasswort ein, das Sie in Schritt zwei notiert haben.
Sobald Sie Jenkins freigeschaltet haben, leitet Ihr Browser Sie zu einer Seite weiter, auf der Sie Ihre Jenkins-Instanz mit Plugins anpassen können (Schritt vier).
4. Auf der Seite „Jenkins anpassen“ klicken Sie auf die Option „Vorgeschlagene Plugins installieren“.
Das Jenkins-Plugin ist ein Drittanbieter-Tool, das mit Jenkins integriert ist und es Ihnen ermöglicht, Aufgaben wie das Git-Plugin auszuführen. Das Git-Plugin ermöglicht die Verbindung mit einem Git-Repository, das Ausführen von Git-Befehlen usw.

5. Füllen Sie die Details des Admin-Benutzers wie unten gezeigt aus und klicken Sie auf „Speichern und Fortfahren“, um einen Admin-Benutzer zu erstellen. Dieser Admin-Benutzer ermöglicht Ihnen die Arbeit mit dem Jenkins-Benutzeroberflächendashboard oder der Jenkins-Instanz.
Sobald Sie auf „Speichern und Fortfahren“ klicken, erscheint ein Bildschirm zur Instanzkonfiguration, wie in Schritt fünf gezeigt.
Standardmäßig verfügt Jenkins über einen Admin-Benutzer mit Benutzername/Passwort (
admin: admin
), bietet Ihnen jedoch weiterhin die Möglichkeit, einen Admin-Benutzer Ihrer Wahl zu erstellen. Sie können als Administrator fortfahren, wenn Sie keinen benutzerdefinierten Admin-Benutzer erstellen möchten.

6. Klicken Sie schließlich auf „Speichern und Abschließen“, um die Instanzkonfiguration zu speichern.
Die Instanzkonfiguration ermöglicht es Ihnen, die Jenkins-URL festzulegen, die Sie verwenden möchten. In diesem Fall verwenden Sie die Standard-URL (d. h. server-ip:8080).


Ändern eines Jenkins-Instanzstandardports
Zuvor haben Sie gelernt, dass Jenkins standardmäßig auf Port 8080 läuft, was in Ordnung ist. Aber was ist, wenn Sie andere Anwendungen auf dem gleichen Port ausführen müssen, wie zum Beispiel Apache oder NGINX? Keine Sorge! Sie können den Standardport von Jenkins (8080) ändern und die Jenkins-Instanz auf anderen Ports ausführen.
1. Öffnen Sie die Datei /etc/default/Jenkins in Ihrem bevorzugten Texteditor und ändern Sie den Standardport von 8080 auf 9090 und speichern Sie die Änderungen.

2. Führen Sie anschließend den untenstehenden Befehl aus, um Jenkins neu zu starten, damit die aktualisierten Konfigurationen wirksam werden.
3. Navigieren Sie abschließend zur Jenkins-URL, aber ändern Sie dieses Mal den Port auf 9090, wie unten gezeigt.

Das sichere Ausführen von Jenkins (HTTPS) mit SSL-Zertifikat
Zu diesem Zeitpunkt läuft Ihre Jenkins-Instanz perfekt auf Port 9090. Aber ist sie sicher? Nein, das ist sie nicht. Sichern Sie Ihre Jenkins-Instanz und verhindern Sie, dass sie von Angreifern kompromittiert wird, indem Sie ein SSL-Zertifikat aktivieren.
SSL-Zertifikate werden hauptsächlich verwendet, um lokal auf dem Computer zu testen, wenn kein Zertifikat von einer externen Zertifizierungsstelle verfügbar ist.
Um Ihre Jenkins-Instanz zu sichern:
1. Führen Sie jeden der folgenden Befehle aus, um ein Verzeichnis namens ~/Zertifikate zu erstellen, um Zertifikate zu speichern, und wechseln Sie in dieses Verzeichnis.
2. Führen Sie anschließend den folgenden openssl
-Befehl aus, um eine Zertifikatsanforderung (CSR) und einen privaten Schlüssel zu generieren.

3. Führen Sie die folgenden Befehle aus, um ein weiteres Verzeichnis (/etc/apache2/ssl
) zu erstellen und die Zertifikate aus dem Verzeichnis ~/certificates/
in das Verzeichnis /etc/apache2/ssl
zu verschieben.
4. Öffnen Sie die Standard-SSL-Apache-Site-Konfigurationsdatei (/etc/apache2/sites-available/default-ssl.conf
) und fügen Sie die unten stehenden Zeilen hinzu. Stellen Sie sicher, dass Sie <my-server-name>
durch den tatsächlichen Namen Ihres Servers ersetzen.
Im folgenden Code geben Sie den Speicherort (Zertifikatsschlüssel und -datei) an, an dem Sie zuvor die SSL-Zertifikate kopiert haben. Außerdem fügen Sie für Jenkins hinzu, um auf Port 9090
umzuleiten, das ProxyPass
-Argument hinzu und aktivieren ProxyPreserveHost
.

5. Führen Sie nun jeden der folgenden Befehle aus, um das SSL-Modul zu aktivieren, die von Ihnen modifizierte Site (Schritt vier) zu aktivieren und den Apache-Dienst neu zu starten.
6. Schließlich navigieren Sie zu Ihrer Jenkins-Instanz, diesmal jedoch unter Verwendung von HTTPS, wie unten gezeigt.
Wie Sie sehen können, öffnet Jenkins erfolgreich mit SSL-Verbindungen auf dem HTTPS-Port. Machen Sie sich keine Sorgen, wenn Sie ein Warnsymbol sehen, das die Nachricht Nicht sicher anzeigt. Sie erhalten diese Warnung, da Sie ein selbstsigniertes Zertifikat (von Ihnen erstellt) verwenden und nicht von der Zertifizierungsstelle.

Abschluss
In diesem Tutorial haben Sie gelernt, wie Sie Jenkins auf einer Ubuntu-Maschine installieren und überprüfen können, ob Sie auf eine Jenkins-Instanz sicher zugreifen können.
Jetzt, wie planen Sie, Ihr Spiel mit Jenkins zu verbessern? Vielleicht Webbereitstellungen automatisieren? Oder eine Jenkins CI-CD-Pipeline erstellen, um Ihren Softwareentwicklungsprozess zu verbessern?