Senior Developer Educator
Si vous devez réaliser des tâches techniques répétitives, cela peut s’avérer être difficile de trouver des solutions d’automatisation qui répondent à vos attentes. Avec Jenkins, un serveur d’automatisation open-source, vous pouvez gérer vos tâches efficacement de la construction au déploiement de logiciels. Jenkins est basé sur Java. Son installation se fait à partir de paquets Ubuntu ou en téléchargeant et exécutant son fichier d’archive d’applications web (WAR) : une série de fichiers qui constituent une application web complète à exécuter sur un serveur.
Dans ce tutoriel, nous allons installer Jenkins sur Ubuntu 20.04, démarrer le serveur de développement et créer un utilisateur administratif afin que vous commenciez à découvrir les capacités de Jenkins. Lorsque, à la fin de ce tutoriel, vous disposerez d’un serveur de niveau de développement prêt à l’utilisation suivez le guide Comment configurer Jenkins avec SSL en utilisant un proxy inverse Nginx sur Ubuntu 18.04 pour sécuriser cette installation.
Pour suivre ce tutoriel, vous aurez besoin de :
La version de Jenkins incluse par défaut dans les paquets Ubuntu est souvent inférieure à la dernière version disponible sur le projet en lui-même. Installez Jenkins en utilisant les paquets gérés par le projet pour être sûr de bien avoir les dernières corrections et fonctionnalités.
Tout d’abord, ajoutez la clé du référentiel au système :
- wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
Une fois la clé ajoutée, le système affichera OK
.
Ensuite, ajoutons l’adresse du référentiel Debian sur la sources.list
du serveur :
- sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
Une fois les deux commandes saisies, nous exécuterons la update
afin que apt
utilise le nouveau référentiel.
- sudo apt update
Enfin, nous installerons Jenkins et ses dépendances.
- sudo apt install jenkins
Maintenant que Jenkins et ses dépendances sont installés, nous allons démarrer le serveur Jenkins.
Démarrons Jenkins en utilisant systemctl
:
sudo systemctl start jenkins
Étant donné que systemctl
n’affichera pas le résultat de l’état, nous utiliserons la commande status
pour vérifier si Jenkins a bien démarré :
- sudo systemctl status jenkins
Si tout a bien bien fonctionné, au début, le résultat de statut affiche que le service est actif et configuré pour démarrer au lancement :
Output● jenkins.service - LSB: Start Jenkins at boot time
Loaded: loaded (/etc/init.d/jenkins; generated)
Active: active (exited) since Fri 2020-06-05 21:21:46 UTC; 45s ago
Docs: man:systemd-sysv-generator(8)
Tasks: 0 (limit: 1137)
CGroup: /system.slice/jenkins.service
Maintenant que Jenkins est opérationnel, ajustons nos règles de pare-feu afin de pouvoir l’atteindre à partir d’un navigateur web et terminer la configuration initiale.
Pour configurer un pare-feu UFW, consultez Configuration initiale du serveur avec Ubuntu 20.04, Étape 4 - Configuration d’un pare-feu de base. Jenkins fonctionne par défaut sur le port 8080
. Nous allons ouvrir ce port en utilisant ufw
:
- sudo ufw allow 8080
Remarque : si le pare-feu est inactif, les commandes suivantes autoriseront OpenSSH et activeront le pare-feu :
- sudo ufw allow OpenSSH
- sudo ufw enable
Vérifiez l’état de ufw
pour confirmer les nouvelles règles :
- sudo ufw status
Vous remarquerez que le trafic vers le port 8080
est autorisé depuis n’importe où :
OutputStatus: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
8080 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
8080 (v6) ALLOW Anywhere (v6)
Une fois Jenkins installé et notre pare-feu configuré, nous pouvons achever l’étape d’installation et nous plonger dans la configuration de Jenkins.
Pour configurer votre installation, consultez Jenkins sur son port par défaut, 8080
en utilisant votre nom de domaine ou l’adresse IP de votre serveur : http://your_server_ip_or_domain:8080
Vous devriez voir apparaître l’écran Unlock Jenkins qui affichera l’emplacement du mot de passe initial :
Dans la fenêtre du terminal, utilisez la commande cat
pour afficher le mot de passe :
- sudo cat /var/lib/jenkins/secrets/initialAdminPassword
Copiez le mot de passe alphanumérique composé de 32 caractères du terminal et collez-le dans le champ Administrator password, puis cliquez sur Continue.
L’écran suivant présente l’option d’installer des plugins suggérés ou de sélectionner des plugins spécifiques :
Nous allons cliquer sur l’option Installer les plugins suggérés, qui lancera immédiatement le processus d’installation.
Une fois l’installation terminée, vous serez invité à configurer le premier utilisateur administratif. Vous pouvez sauter cette étape et continuer comme admin
en utilisant le mot de passe initial utilisé ci-dessus, mais nous allons prendre quelque minutes pour créer l’utilisateur.
Remarque : le serveur Jenkins par défaut n’est pas crypté, ce qui signifie que les données soumises avec ce formulaire ne sont pas protégées. Consultez Comment configurer Jenkins avec SSL en utilisant un proxy inverse Nginx sur Ubuntu 20.04 pour protéger les identifiants d’utilisateur et les informations sur les constructions transmises via l’interface web.
Saisissez le nom et le mot de passe de votre utilisateur :
ns
Vous verrez apparaître une page Instance configuration qui vous demandera de confirmer l’URL préférée de votre instance Jenkins. Vérifiez qu’il s’agit bien du nom de domaine ou de l’adresse IP de votre serveur :
Après avoir confirmé l’exactitude des informations, cliquez sur Save and Finish Vous verrez apparaître une page de confirmation confirmant que « Jenkins est prêt ! » :
Cliquez sur Start using Jenkins pour consulter le tableau de bord principal de Jenkins :
À ce stade, vous avez terminé d’installer correctement Jenkins.
Dans ce tutoriel, vous avez installé Jenkins en utilisant les paquets fournis par le projet, démarré le serveur, ouvert le pare-feu et créé un utilisateur administratif. À ce stade, vous pouvez commencer à explorer Jenkins.
Une fois que vous aurez terminé, suivez le guide Comment configurer Jenkins avec SSL en utilisant un proxy inverse Nginx sur Ubuntu 20.04 pour protéger vos mots de passe, ainsi que toute information sensible du système ou du produit qui sera envoyée entre votre machine et le serveur en texte clair pour continuer à utiliser Jenkins.
Pour en savoir plus sur ce que vous pouvez faire avec Jenkins, consultez d’autres tutoriels sur le sujet :
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Sign up for Infrastructure as a Newsletter.
Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.