Dieses Tutorial existiert für diese Betriebssystemversionen
- Ubuntu 20.04 (Focal Fossa)
- Ubuntu 18.04 (Bionic Beaver)
- Ubuntu 16.04 (Xenial Xerus)
Auf dieser Seite
- Voraussetzung
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, erstmals veröffentlicht im Jahr 2011 unter MIT-Lizenz, und es ist kostenlose Software.
In diesem Tutorial zeige ich Ihnen, wie Sie die neueste Jenkins-Version auf Ubuntu Server 16.04 installieren. Wir werden Jenkins auf unserem eigenen Domänennamen ausführen und Jenkins so installieren und konfigurieren, dass es unter dem Apache-Webserver mit dem Reverse-Proxy für Jenkins ausgeführt wird.
Voraussetzung
- Ubuntu-Server 16.04 – 64 Bit
- Root-Berechtigungen
Schritt 1 – Java OpenJDK 7 installieren
Jenkins basiert auf Java, daher müssen wir Java OpenJDK Version 7 auf dem Server installieren. In diesem Schritt installieren wir Java 7 aus einem PPA-Repository, das wir zuerst hinzufügen werden.
Standardmäßig wird Ubuntu 16.04 ohne das Paket python-software-properties zum Verwalten von PPA-Repositorys ausgeliefert, daher müssen wir dieses Paket zuerst installieren. Installieren Sie python-software-properties mit dem apt-Befehl.
apt-get install python-software-properties
Fügen Sie als Nächstes das Java PPA-Repository zum Server hinzu.
add-apt-repository ppa:openjdk-r/ppa
Just Press ENTER
Aktualisieren Sie das Ubuntu-Repository und installieren Sie das Java OpenJDK mit dem Befehl apt.
apt-get update
apt-get install openjdk-7-jdk
Überprüfen Sie die Installation, indem Sie den folgenden Befehl eingeben:
java -version
und Sie erhalten die Java-Version, die auf dem Server installiert ist.
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 das Repository und installieren Sie Jenkins.
apt-get update
apt-get install jenkins
Wenn die Installation abgeschlossen ist, starten Sie Jenkins mit diesem systemctl-Befehl.
systemctl start jenkins
Stellen Sie sicher, dass Jenkins ausgeführt wird, indem Sie den von Jenkins verwendeten Standardport (Port 8080) überprüfen. Ich werde es mit dem netstat-Befehl unten überprüfen:
netstat -plntu
Jenkins ist installiert und wird auf Port 8080 ausgeführt.
Schritt 3 – Installieren und konfigurieren Sie Apache 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 werde ich Apache installieren und einige erforderliche Module aktivieren, und dann werde ich die virtuelle Hostdatei mit dem Domänennamen my.jenkins.id 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.
apt-get install apache2
Wenn die Installation abgeschlossen ist, aktivieren Sie die Module proxy und proxy_http, damit wir Apache als Front-End-Server/Reverse-Proxy für Jenkins konfigurieren können.
a2enmod proxy
a2enmod proxy_http
Erstellen Sie als Nächstes eine neue virtuelle Hostdatei 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 my.jenkins.id
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://my.jenkins.id/
</Virtualhost>
Speicher die Datei. Aktivieren Sie dann den virtuellen Jenkins-Host mit dem Befehl a2ensite.
a2ensite jenkins
Starten Sie Apache und Jenkins neu.
systemctl restart apache2
systemctl restart jenkins
Überprüfen Sie, ob Port 80 und 8000 von Jenkins und Apache verwendet werden.
netstat -plntu
Schritt 4 – Jenkins konfigurieren
Jenkins läuft unter dem Domainnamen „my.jenkins.id“. Ö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.
Anfangs-Admin-Passwort Jenkins mit cat-Befehl anzeigen.
cat /var/lib/jenkins/secrets/initialAdminPassword
a1789d1561bf413c938122c599cf65c9
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 Plug-ins installieren“. ', klicken Sie darauf.
Installation von Jenkins-Plugins läuft.
Nach der Plugin-Installation 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 fertig stellen '.
Klicken Sie auf Start und beginnen Sie mit der Verwendung von Jenkins. Sie werden zum Jenkins-Admin-Dashboard weitergeleitet.
Installation und Konfiguration von Jenkins erfolgreich abgeschlossen
Schritt 5 – Jenkins-Sicherheit
Vom Jenkins-Admin-Dashboard aus müssen wir die Standardsicherheitseinstellungen für Jenkins konfigurieren, klicken Sie auf „Manage Jenkins“. ' und dann 'Globale Sicherheit konfigurieren '.
Jenkins bietet mehrere Autorisierungsmethoden in der 'Zugriffskontrolle ' Sektion. Ich wähle "Matrixbasierte Sicherheit". ' um alle Benutzerrechte kontrollieren zu können. Aktivieren Sie den Admin-Benutzer im Feld 'Benutzer/Gruppe ' und klicken Sie auf Hinzufügen . Geben Sie dem Administrator alle Berechtigungen, indem Sie alle Optionen aktivieren , und geben Sie der anonymen Nur-Lese-Berechtigungen. Klicken Sie nun auf „Speichern“. '.
Sie werden zum Dashboard weitergeleitet, und wenn es eine Anmeldeoption gibt, geben Sie einfach Ihren Admin-Benutzer und Ihr Passwort ein.
Schritt 6 – Testen eines einfachen Automatisierungsjobs
In diesem Abschnitt möchte ich nur einen einfachen Job für den Jenkins-Server testen. Ich werde einen einfachen Job zum Testen von Jenkins und zum Ermitteln der Serverlast mit dem Befehl top erstellen.
Klicken Sie im Jenkins-Admin-Dashboard auf "Neuen Job erstellen". '.
Geben Sie den Jobnamen ein, ich verwende hier „Checking System“, wählen Sie „Freestyle Project ' und klicken Sie auf 'OK '.
Gehen Sie zu „Erstellen ' Registerkarte. Auf dem 'Build-Schritt hinzufügen ', wählen Sie 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 "Jetzt erstellen". ', um den Job 'Prüfung des Systems' auszuführen.
Nachdem der Job ausgeführt wurde, sehen Sie den 'Build-Verlauf ', klicken Sie auf den ersten Job, um die Ergebnisse anzuzeigen.
Hier sind die Ergebnisse des von Jenkins ausgeführten Jobs.
Jenkins-Installation mit Apache-Webserver auf Ubuntu 16.04 erfolgreich abgeschlossen.