Comment installer Jenkins sur Ubuntu 22.04
Jenkins est un outil d'automatisation open source pour l'intégration continue/livraison continue (CI/CD). est entièrement écrit en Java avec le support de plus de 1000 plugins pour créer, déployer et automatiser votre projet. Jenkins devient l'un des principaux outils d'automatisation qui accélèrent votre processus de développement grâce à l'automatisation. Jenkins intègre les processus du cycle de vie du développement tels que la construction, la documentation, les tests, le package, la phase, le déploiement, l'analyse statique et bien d'autres.
Jenkins prend en charge plusieurs outils de contrôle de version tels que Git, Subversion, Mercurial, CVS, Perforce et RTC. En outre, il peut exécuter Apache Ant, Apache Maven, des scripts shell et des commandes batch Windows. Jenkins bénéficie d'un solide support communautaire avec une documentation complète et un wiki, ce qui fait de Jenkins l'un des outils CI/CD d'automatisation les plus utilisés. En outre, il propose de nombreux outils, langages et tâches d'automatisation différents pour automatiser votre processus de développement et de déploiement.
Dans ce tutoriel, vous apprendrez comment installer Jenkins sur la dernière Ubuntu 22.04. ce didacticiel explique également comment configurer Apache2 en tant que proxy inverse pour Jenkins avec une connexion SSL activée par-dessus. En fin de compte, vous apprendrez également comment créer le premier projet de build Jenkins pour exécuter des scripts ou des commandes shell.
Prérequis
- Un serveur Ubuntu 20.04
- Un utilisateur non root avec les privilèges d'administrateur root.
Installation de Java
Dans cette première étape, vous installerez Java OpenJDK et JRE sur votre système Ubuntu. La dernière version de Jenkins nécessitait Java v11, et vous allez maintenant l'installer sur votre système.
Avant de commencer à installer des packages, exécutez la commande apt ci-dessous pour mettre à jour et actualiser votre référentiel Ubuntu.
sudo apt update
Installez maintenant Java OpenJDK 11 à l'aide de la commande suivante.
sudo apt install openjdk-11-jre
Saisissez Y pour confirmer et appuyez sur ENTER pour démarrer l'installation. L'installation de Java OpenJDK va maintenant démarrer.
Une fois l'installation terminée, exécutez la commande java ci-dessous pour vérifier et vérifier la version Java.
java --version
Dans la capture d'écran suivante, vous pouvez voir que Java OpenJDK 11 est installé sur la machine Ubuntu 22.04.
Installer Jenkins
Vous avez maintenant installé Java sur votre système Ubuntu, vous allez maintenant commencer à installer Jenkins sur la machine Ubuntu 22.04.
Il existe plusieurs façons d'installer Jenkins, la plus simple consiste à utiliser le package Jenkins prédéfini fourni par le référentiel officiel Jenkins. Et pour ce faire, vous devrez ajouter le référentiel Jenkins à votre système Ubuntu.
Exécutez la commande ci-dessous pour ajouter la clé GPG pour le référentiel jenkins.
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee \
/usr/share/keyrings/jenkins-keyring.asc > /dev/null
Après cela, ajoutez le référentiel Jenkins à votre système à l'aide de la commande ci-dessous.
echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
/etc/apt/sources.list.d/jenkins.list > /dev/null
Exécutez maintenant la commande apt ci-dessous pour mettre à jour et actualiser tous vos référentiels système.
sudo apt update
Dans la capture d'écran ci-dessous, vous pouvez voir que le référentiel Jenkins est ajouté.
Ensuite, vous pouvez installer Jenkins à l'aide de la commande apt ci-dessous.
sudo apt install jenkins
Saisissez Y pour confirmer l'installation et appuyez sur ENTER pour continuer. L'installation de Jenkins va maintenant commencer.
Une fois l'installation terminée, exécutez la commande suivante pour démarrer et activer le service Jenkins.
sudo systemctl start jenkins
sudo systemctl enable jenkins
Vérifiez maintenant le service Jenkins à l'aide de la commande ci-dessous.
sudo systemctl status jenkins
Dans la capture d'écran suivante, le service Jenkins est actif et en cours d'exécution. Il fonctionne sur localhost avec le port par défaut 8080. De plus, Jenkins est désormais activé, ce qui signifie qu'il sera exécuté automatiquement au démarrage du système.
Configuration d'Apache2 en tant que proxy inverse
À ce stade, Jenkins est opérationnel sur l'adresse par défaut localhost avec le port 8080. Vous allez maintenant installer et configurer le serveur Web Apache2 en tant que proxy inverse pour jenkins.
Le serveur Web Apache2 s'exécutera devant le service Jenkins et ouvrira les ports HTTP et HTTPS standard pour l'accès client.
Exécutez la commande apt ci-dessous pour installer le package apache2 sur votre système.
sudo apt install apache2
Saisissez Y pour confirmer l'installation et appuyez sur ENTER pour continuer.
Maintenant, une fois l'installation terminée, exécutez la commande ci-dessous pour activer certains modules Apache2 nécessaires à la configuration du proxy inverse.
sudo a2enmod ssl rewrite headers proxy proxy_http
Vous verrez maintenant le résultat comme la capture d'écran suivante.
Ensuite, créez une nouvelle configuration d'hôte virtuel /etc/apache2/sites-available/jenkins.conf à l'aide de l'éditeur nano.
sudo nano /etc/apache2/sites-available/jenkins.conf
Ajoutez la configuration suivante au fichier. Et assurez-vous de modifier le nom de domaine et le chemin des certificats SSL.
<VirtualHost *:80>
ServerAdmin webmaster@localhost
Redirect permanent / https://jenkins.hwdomain.io/
</VirtualHost>
<VirtualHost *:443>
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/jenkins.hwdomain.io/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/jenkins.hwdomain.io/privkey.pem
ServerAdmin webmaster@localhost
ProxyRequests Off
ProxyPreserveHost On
AllowEncodedSlashes NoDecode
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://localhost:8080/ nocanon
ProxyPassReverse / http://localhost:8080/
ProxyPassReverse / http://jenkins.hwdomain.io/
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-Port "443"
</VirtualHost>
Enregistrez et fermez le fichier lorsque vous avez terminé.
Ensuite, exécutez la commande suivante pour activer la configuration de l'hôte virtuel jenkins.conf.
sudo a2ensite jenkins.conf
Après cela, vérifiez et vérifiez toutes vos configurations Apache2 à l'aide de la commande ci-dessous.
sudo apachectl configtest
Assurez-vous d'obtenir le message de sortie tel que "Syntaxe OK", ce qui signifie que toutes vos configurations Apache2 sont correctes.
Enfin, exécutez la commande ci-dessous pour redémarrer le service Apache2 et appliquer les nouvelles modifications à votre configuration Apache2.
sudo systemctl restart apache2
Le serveur Web Apache2 est désormais opérationnel avec la configuration du proxy inverse pour Jenkins.
Démarrer l'installation de Jenkins
À ce stade, vous êtes prêt à démarrer l'installation et la configuration de Jenkins depuis votre navigateur Web. Mais avant de commencer à configurer Jenkins, vous devrez obtenir et obtenir le mot de passe d'initialisation pour Jenkins.
L'initialisation du mot de passe pour Jenkins est disponible dans le fichier /var/lib/jenkins/secrets/initialAdminPassword. Ce fichier contient le mot de passe secret généré pour initialiser votre installation Jenkins.
Exécutez la commande ci-dessous pour vérifier et obtenir le mot de passe initial de Jenkins.
ls /var/lib/jenkins/secrets/initialAdminPassword
cat /var/lib/jenkins/secrets/initialAdminPassword
Dans la capture d'écran ci-dessous, vous pouvez voir une chaîne aléatoire générée par Jenkins. Vous pouvez avoir un secret aléatoire différent.
Copiez le mot de passe secret initial dans votre note, il sera utilisé plus tard pour configurer Jenkins.
Ouvrez votre navigateur Web et visitez l'URL d'installation de votre installation Jenkins (par exemple https://jenkins.hwdomain.io).
Sur la première page, il vous sera demandé de saisir l'initialisation du mot de passe pour Jenkins. Collez votre mot de passe secret pour initialiser l'installation et la configuration de Jenkins, puis cliquez sur Continuer.
Cliquez maintenant sur le bouton "Installer les plugins suggérés" pour démarrer la configuration Jenkins avec des plugins supplémentaires. Cette option est bonne pour le débutant, elle installera automatiquement certains plugins Jenkins qui pourraient être nécessaires à votre projet.
L'installation du plugin Jenkins va maintenant commencer.
Une fois le processus d'installation terminé, il vous sera maintenant demandé de créer un nouvel utilisateur administrateur pour Jenkins.
Saisissez le nouvel utilisateur administrateur, le mot de passe, l'adresse e-mail et le nom complet de votre installation Jenkins et cliquez sur le bouton Enregistrer et continuer.
Pour l'URL d'installation de Jenkins, saisissez votre domaine Jenkins et cliquez sur Enregistrer et terminer.
Et maintenant, vous obtiendrez la page suivante. Cliquez sur le bouton Redémarrer pour redémarrer le service Jenkins et appliquer les nouvelles configurations.
Une fois Jenkins redémarré, visitez à nouveau le nom de domaine de votre URL d'installation Jenkins et vous obtiendrez maintenant la page de connexion de Jenkins.
Saisissez votre utilisateur administrateur et votre mot de passe pour Jenkins et cliquez sur Connexion.
Une fois connecté, vous obtiendrez le tableau de bord Jenkins suivant.
Vous avez maintenant installé et configuré avec succès Jenkins sur la dernière version d'Ubuntu 22.04 avec Apache2 comme proxy inverse pour votre déploiement.
Création de la première version de Jenkins
Après avoir installé et configuré avec succès Jenkins, vous allez maintenant créer une nouvelle première version de Jenkins à partir du tableau de bord Jenkins.
Sur le tableau de bord Jenkins, cliquez sur le menu Nouvel élément pour créer un nouveau projet de build Jenkins.
Saisissez le nom du projet et sélectionnez le type de projet, puis cliquez sur OK. Dans cette démo, le nom du projet est "first build" avec le type de projet "Projet Freestyle".
Dans la "section générale", saisissez la description de votre build.
Passez maintenant à l'onglet "Build" et choisissez la build comme "Execute shell" et saisissez la commande suivante comme commande de build.
echo "This is test build on jenkins"
Ce projet affichera uniquement un message "Ceci est une version de test sur jenkins" dans la sortie de la version Jenkins.
Cliquez maintenant sur le bouton Enregistrer.
Maintenant, sur les détails du projet "first build", cliquez sur le menu "Build Now" pour démarrer et exécuter la build Jenkins.
Une fois le processus terminé, vous pouvez voir la section historique de construction dans le menu du bas comme capture d'écran suivante.
Cliquez sur le numéro de build pour obtenir des détails sur l'opération de build qui a été effectuée.
Cliquez maintenant sur le menu "Sortie de la console" et vous obtiendrez la sortie de votre premier Jenkins à construire, qui est le message "Ceci est une version de test sur jenkins". Et la construction de Jenkins est un succès.
Conclusion
Félicitation ! Vous avez maintenant installé avec succès Jenkins sur le dernier serveur Ubuntu 22.04 avec Apache2 comme proxy inverse avec une connexion sécurisée HTTPS activée. En outre, vous avez appris l'initialisation et la configuration de base de Jenkins, et avez également créé le premier projet de construction simple à l'aide de Jenkins.