Jenkins ist ein Automatisierungs-Server und OpenSource lizenziert. Der Server wird meist für die Continous Integration und Continous Deployment (CI/CD) verwendet.
In diesem Tutorial zeigen wir euch, wie ihr Jenkins auf Ubunutu 22 installiert und für die Erstverwendung konfiguriert.
Vorbereitung
Zur Vorbereitung der Jenkins-Installation wird Java benötigt. Dies installieren wir wie folgt:
sudo apt install openjdk-11-jdk
Installation
Um mit der Installation von Jenkins beginnen zu können, fügen wir das offizielle Repoitory von Jenkins zu unserem System hinzu, da die von Ubuntu mitgelieferten Versionen oft nicht den neusten Versionen des Projekts entsprechen. Folgender Befehl fügt den Repository Key zu unserem System hinzu:
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key |sudo gpg --dearmor -o /usr/share/keyrings/jenkins.gpg
Natürlich müssen wir das Paket aber auch noch zu unserer sources.list-Datei hinzufügen:
sudo sh -c 'echo deb [signed-by=/usr/share/keyrings/jenkins.gpg] http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
Anschliessend kurz die Datenbank updaten und Jenkins mit allen Abhängigkeiten installieren.
sudo apt update
sudo apt install jenkins
Der Jenkins-Server ist nun eigentlich schon installiert und kann mit folgendem Befehl gestartet werden:
sudo systemctl start jenkins.service
Überprüfung? klar, kennen wir ja warscheinlich auch schon:
sudo systemctl status jenkins
Nach dem Absetzen dieses Befehls hoffen wir auf eine Ausgabe, welche folgender Ähnlich sieht:
sudo systemctl status jenkins
● jenkins.service - Jenkins Continuous Integration Server
Loaded: loaded (/lib/systemd/system/jenkins.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2022-12-11 23:14:09 UTC; 37s ago
Main PID: 5364 (java)
Tasks: 58 (limit: 23307)
Memory: 2.9G
CPU: 2min 18.073s
CGroup: /system.slice/jenkins.service
└─5364 /usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080
Dez 11 23:13:46 jenkins jenkins[5364]: f0316d50201c4f338fc13e480e3a07ae
Dez 11 23:13:46 jenkins jenkins[5364]: This may also be found at: /var/lib/jenkins/secrets/initialAdminPassword
Dez 11 23:13:46 jenkins jenkins[5364]: *************************************************************
Dez 11 23:13:46 jenkins jenkins[5364]: *************************************************************
Dez 11 23:13:46 jenkins jenkins[5364]: *************************************************************
Dez 11 23:14:09 jenkins jenkins[5364]: 2022-12-11 23:14:09.547+0000 [id=34] INFO jenkins.InitReactorRunner$1#onAttained: Completed initialization
Dez 11 23:14:09 jenkins jenkins[5364]: 2022-12-11 23:14:09.602+0000 [id=24] INFO hudson.lifecycle.Lifecycle#onReady: Jenkins is fully up and running
Dez 11 23:14:09 jenkins systemd[1]: Started Jenkins Continuous Integration Server.
Dez 11 23:14:09 jenkins jenkins[5364]: 2022-12-11 23:14:09.970+0000 [id=64] INFO h.m.DownloadService$Downloadable#load: Obtained the updated data file for hudson.tasks.Maven.MavenInstaller
Dez 11 23:14:09 jenkins jenkins[5364]: 2022-12-11 23:14:09.972+0000 [id=64] INFO hudson.util.Retrier#start: Performed the action check updates server successfully at the attempt #1
Firewall konfigurieren
Damit auch nix geblockt wird öffnen wir noch die nötigen Ports auf der Ubuntu-Firewall:
sudo ufw allow 8080
und schnell den Status überprüfen
sudo ufw status
Wenn die Firewall bei euch deaktiviert ist, wird die Ausgabe nur inactive sein, andernfalls solltet ihr den Port 8080 mit Action allow finden.
Konfigurieren von Jenkins
Das Webinterface erreicht ihr nun unter folgender Adresse: http://deine-server-ip:8080
Wir müssen aber Jenkins noch entsperren, und hierfür das Initialpasswort eingeben. Jenkins sagt uns aber netterweise in rot genau wo wir dieses finden. Also schnell Pfad rauskopieren, cat davorschreiben und schon wird das Passwort ausgegeben. Eingebeben und auf weiter drücken
cat /var/lib/jenkins/secrets/initialAdminPassword

Ist das Passwort eingegeben, genügt ein Klick auf weiter und wir können wählen, welche Plugins wir installieren möchten. Wir wählen die linke Option und schon beginnt der Initialisierungsprozess.


Ist auch dieser Schritt erfolgreich durchlaufen, konfigurieren wir unseren ersten Admin User. Wir denken hier ist keine Erklärung nötig 🙂 Nur als kleine Information, klickt man auf skip and continue as admin, nutzt man den Benutzernamen admin und das Initialpasswort, das wir ganz am Anfang eingegeben haben.

Bei der Instance Configuration haben wir einfach weiter geklickt, da wir Jenkins nur lokal verwenden und via der IP ansteuern.

Und schon ist Jenkins bereit genutzt zu werden. Wenn ihr noch Fragen habt oder ein weiteres Tutorial betreffend Jenkins wünscht, lasst uns doch einen Kommentar da.

Viel Spass beim automatisieren mit Jenkins auf Ubunutu 22.