GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie Jenkins Automation Server mit Apache unter Ubuntu 18.04

Jenkins ist ein Automatisierungsserver, der aus dem Hudson-Projekt hervorgegangen ist. Jenkins ist eine serverbasierte Anwendung, die in einem Java-Servlet-Container ausgeführt wird und viele SCM-Softwaresysteme (Source Control Management) unterstützt, darunter Git, SVN und Mercurial. Jenkins bietet Hunderte von Plugins zur Automatisierung Ihres Projekts. Jenkins, erstellt von Kohsuke Kawaguchi, wurde erstmals 2011 unter MIT-Lizenz veröffentlicht und ist eine kostenlose Software.

In diesem Tutorial zeige ich Ihnen, wie Sie die neueste stabile Jenkins-Version auf Ubuntu Server 18.04 LTS (Bionic Beaver) installieren. Wir werden Jenkins auf unserem eigenen Domänennamen ausführen und Jenkins so installieren und konfigurieren, dass es unter dem Reverse-Proxy des Apache-Webservers ausgeführt wird.

Voraussetzungen

  • Ubuntu 18.04
  • Root-Rechte

Was werden wir tun?

  1. Installieren Sie Java
  2. Installieren Sie Jenkins
  3. Installieren und konfigurieren Sie Apache2 als Reverse Proxy für Jenkins
  4. UFW-Firewall konfigurieren
  5. Jenkins konfigurieren
  6. Jenkins-Sicherheit
  7. Testen

Schritt 1 – Java installieren

Jenkins ist eine Java-basierte Anwendung, daher müssen wir Java OpenJDK auf dem Server installieren. In diesem Schritt installieren wir Java 8 aus einem PPA-Repository, das wir zuerst hinzufügen werden.

Installieren Sie Software-Properties-Common Packages und fügen Sie dann das Java OpenJDK PPA-Repository hinzu.

sudo apt install software-properties-common apt-transport-https -y
sudo add-apt-repository ppa:openjdk-r/ppa -y

Installieren Sie nun Java 8 mit dem apt-Befehl.

sudo apt install openjdk-8-jdk -y

Überprüfen Sie nach Abschluss der Installation die auf dem System installierte Java-Version.

java -version

Und Sie erhalten das Java OpenJDK 1.8, das jetzt auf dem Ubuntu 18.04-System installiert ist.

Hinweis:

  • Wenn Sie mehrere Java-Versionen auf Ihrem System haben, ändern Sie die Standard-Java-Version mit dem folgenden Befehl.
sudo update-alternatives --config java

Schritt 2 – Jenkins installieren

Jenkins stellt ein Ubuntu-Repository für die Installationspakete bereit und wir werden Jenkins aus diesem Repository installieren.

Fügen Sie den Jenkins-Schlüssel und das Repository mit dem folgenden Befehl zum System hinzu.

wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
echo 'deb https://pkg.jenkins.io/debian-stable binary/' | tee -a /etc/apt/sources.list

Aktualisieren Sie nun das Repository und installieren Sie Jenkins.

sudo apt update
sudo apt install jenkins -y

Wenn die Installation abgeschlossen ist, starten Sie den Jenkins-Dienst und fügen Sie ihn der Startzeit hinzu.

systemctl start jenkins
systemctl enable jenkins

Jenkins läuft jetzt auf dem Ubuntu 18.04-Server und läuft auf dem Standardport „8080“. Überprüfen Sie es mit netstat wie unten.

netstat -plntu

Und Sie erhalten das Ergebnis wie folgt.

Schritt 3 – Installieren und konfigurieren Sie Apache2 als Reverse-Proxy für Jenkins

In diesem Tutorial führen wir Jenkins hinter einem Apache-Webserver aus und konfigurieren Apache als Reverse-Proxy für Jenkins.

Zuerst werden wir Apache installieren und einige erforderliche Module aktivieren, und dann werden wir die virtuelle Hostdatei mit dem Domänennamen jenkins.hakase-labs.io für Jenkins erstellen. Bitte verwenden Sie hier Ihren eigenen Domainnamen und ersetzen Sie ihn in allen Konfigurationsdateien, wo immer er erscheint.

Installieren Sie den Apache2-Webserver aus dem Ubuntu-Repository.

sudo apt install apache2 -y

Wenn die Installation abgeschlossen ist, aktivieren Sie die Module proxy und proxy_http, damit wir Apache als Frontend-Server/Reverse-Proxy für Jenkins konfigurieren können.

a2enmod proxy
a2enmod proxy_http

Erstellen Sie als Nächstes eine neue virtuelle Hostdatei für Jenkins im Verzeichnis „sites-available“.

cd /etc/apache2/sites-available/
vim jenkins.conf

Fügen Sie die Konfiguration des virtuellen Hosts unten ein.

<Virtualhost *:80>
    ServerName        jenkins.hakase-labs.io
    ProxyRequests     Off
    ProxyPreserveHost On
    AllowEncodedSlashes NoDecode
 
    <Proxy http://localhost:8080/*>
      Order deny,allow
      Allow from all
    </Proxy>
 
    ProxyPass         /  http://localhost:8080/ nocanon
    ProxyPassReverse  /  http://localhost:8080/
    ProxyPassReverse  /  http://jenkins.hakase-labs.io/
</Virtualhost>

Speichern und beenden Sie, aktivieren Sie dann den virtuellen Jenkins-Host mit dem Befehl a2ensite.

a2ensite jenkins

Starten Sie die Apache- und Jenkins-Dienste neu.

systemctl restart apache2
systemctl restart jenkins

Die Installation und Konfiguration von Apache2 als Reverse-Proxy für Jenkins ist abgeschlossen.

Schritt 4 – UFW-Firewall konfigurieren

Bevor wir die UFW-Firewall auf dem Ubuntu-Server aktivieren, müssen wir den Port für grundlegende Dienste wie SSH, HTTP und HTTPS hinzufügen.

Fügen Sie der ufw-Firewall SSH-, HTTP- und HTTPS-Dienste hinzu.

ufw allow ssh
ufw allow http
ufw allow https

Starten und aktivieren Sie nun die ufw-Firewall.

ufw enable

Geben Sie 'y' ein und drücken Sie die Eingabetaste.

Die UFW-Firewall ist jetzt aktiviert und der HTTP-Port wurde hinzugefügt.

Schritt 5 – Jenkins konfigurieren

Jenkins läuft unter dem Domainnamen „http://jenkins.hakase-labs.io“. Öffnen Sie Ihren Webbrowser und geben Sie die URL ein.

Sie erhalten den Bildschirm, der Sie auffordert, das anfängliche Administratorkennwort einzugeben. Ein Passwort wurde bereits von Jenkins generiert, also müssen wir nur die Ergebnisse anzeigen und in das Passwortfeld kopieren.

Zeigen Sie das anfängliche Admin-Passwort Jenkins mit dem cat-Befehl an.

cat /var/lib/jenkins/secrets/initialAdminPassword

Fügen Sie die Ergebnisse auf dem Bildschirm ein und klicken Sie auf „Weiter“.

Jetzt sollten wir einige Plugins in Jenkins installieren, um eine gute Grundlage für die spätere Verwendung zu erhalten. Wählen Sie „Vorgeschlagene Plugins installieren“ und klicken Sie darauf.

Installation von Jenkins-Plugins läuft.

Nachdem die Plugin-Installation abgeschlossen ist, müssen wir ein neues Admin-Passwort erstellen. Geben Sie Ihren Admin-Benutzernamen, Ihr Passwort, Ihre E-Mail-Adresse usw. ein und klicken Sie auf „Speichern und fortfahren“.

Geben Sie für die Instanzkonfiguration den Jenkins-Domänennamen „http://jenkins.hakase-labs.io“ ein und klicken Sie auf die Schaltfläche „Speichern und fertig stellen“.

Klicken Sie nun auf die Schaltfläche „Jenkins verwenden“.

Und Sie werden zum Jenkins-Admin-Dashboard weitergeleitet.

Die Installation und Konfiguration von Jenkins wurde erfolgreich abgeschlossen

Schritt 6 – Jenkins-Sicherheit

Vom Jenkins-Admin-Dashboard aus müssen wir die Standardsicherheitseinstellungen für Jenkins konfigurieren, auf „Jenkins verwalten“ und dann auf „Globale Sicherheit konfigurieren“ klicken.

Jenkins stellt im Abschnitt „Zugriffskontrolle“ mehrere Autorisierungsmethoden bereit. Wir werden die „Matrix-basierte Sicherheit“ verwenden, damit wir alle Benutzerrechte kontrollieren können.

Fügen Sie den Benutzer „hakase“ im Feld „Benutzer/Gruppe“ hinzu und klicken Sie auf „Hinzufügen“.

Geben Sie dem 'hakase'-Benutzer alle Privilegien, indem Sie alle Optionen aktivieren, und klicken Sie auf die Schaltfläche 'Speichern'.

Sie werden zum Dashboard weitergeleitet, und wenn es eine Anmeldeoption gibt, geben Sie einfach Ihren Admin-Benutzer und Ihr Passwort ein.

Schritt 7 – Testen

In diesem Abschnitt wollen wir einen einfachen Job für den Jenkins-Server erstellen. Wir erstellen einen einfachen Job zum Testen von Jenkins und zum Ermitteln der Serverlast mit dem Befehl top.

Klicken Sie im Jenkins-Admin-Dashboard auf „Neuen Job erstellen“.

Geben Sie den Jobnamen ein. Wir verwenden hier „Checking System“, wählen „Freestyle Project“ und klicken auf „OK“.

Wechseln Sie zur Registerkarte „Bauen“. Wählen Sie bei „Build-Schritt hinzufügen“ die Option „Shell ausführen“.

Geben Sie den folgenden Befehl in das Feld ein.

top -b -n 1 | head -n 5

Klicken Sie auf „Speichern“.

Sie befinden sich nun auf der Jobseite des Jobs 'Projektprüfsystem'. Klicken Sie auf „Build Now“, um den Job „Checking System“ auszuführen.

Nachdem der Job ausgeführt wurde, sehen Sie den 'Build History', klicken Sie auf den ersten Job, um die Ergebnisse zu sehen.

Hier sind die Ergebnisse des von Jenkins ausgeführten Jobs.

Die Installation und Konfiguration des Jenkins-Automatisierungstools mit Apache2 als Reverse-Proxy auf Ubuntu 18.04 wurde erfolgreich abgeschlossen.

Referenzen

  • https://wiki.jenkins.io/
  • https://wiki.jenkins.io/Standard+Security+Setup
  • https://jenkins-le-guide-complet.github.io/

Ubuntu
  1. So installieren Sie WordPress mit Apache unter Ubuntu 18.04

  2. So installieren Sie Joomla mit Apache unter Ubuntu 18.04

  3. So installieren Sie Laravel auf Ubuntu 18.04 mit Apache

  4. So installieren Sie Jenkins unter Ubuntu 18.04

  5. So installieren Sie Jenkins Automation Server mit Apache unter Ubuntu 16.04

So installieren Sie FileRun unter Ubuntu 20.04 mit Apache/Nginx

So installieren Sie InvoiceNinja auf Ubuntu 18.04 Server mit Apache/Nginx

So installieren Sie InvoiceNinja auf Ubuntu 20.04 Server mit Apache/Nginx

So installieren Sie phpMyAdmin mit Apache unter Ubuntu 22.04 LTS

So installieren Sie den Apache-Webserver unter Ubuntu 18.04

So installieren Sie Drupal auf einem Ubuntu 20.04-Server mit Apache