Jenkins - 1.3 Créer le fichier docker-compose.yml de Jenkins
Docker Compose décrit les services dans un fichier au format YAML. Cette leçon crée un dossier pour Jenkins, puis un fichier docker-compose.yml qui décrit le service. Le nom du fichier doit être exact, car Docker Compose le recherche par ce nom.
Préparer le dossier
On commence par créer un dossier dédié à Jenkins, puis on s'y place. Ce dossier regroupe les fichiers du projet et les données du service.
Le dossier de données du conteneur, nommé jenkins_home, est créé dans ce même emplacement. Il sera utilisé comme volume.
Écrire le fichier docker-compose.yml
Le fichier commence par la version du format Docker Compose. La vidéo indique la version 3.7, puis définit un service nommé jenkins.
Le conteneur porte le même nom, et l'image utilisée est jenkins/jenkins. Le port 8080 du conteneur est rendu accessible depuis la machine.
Le dossier jenkins_home est monté dans le conteneur pour conserver les données. Le service est ensuite relié à un réseau nommé net, créé au démarrage.
version: '3.7'
services:
jenkins:
container_name: jenkins
image: jenkins/jenkins
ports:
- '8080:8080'
volumes:
- ./jenkins_home:/var/jenkins_home
networks:
- net
networks:
net:
Éditer le fichier avec vi
Le fichier s'ouvre dans l'éditeur vi, disponible sur Linux. Le nom docker-compose.yml doit être écrit sans faute, car c'est lui que Docker Compose utilise.
Pour revenir dans le fichier plus tard, il suffit de rouvrir la même commande. Vérifiez toujours le contenu avant de lancer le service.
- Ouvrir le fichier avec vi docker-compose.yml.
- Appuyer sur la touche i pour écrire.
- Revenir au mode commande avec Échap, puis enregistrer avec :wq.
En résumé
Le fichier docker-compose.yml décrit tout le service Jenkins. Il indique la version, l'image, le conteneur, le port, le volume et le réseau. Une fois ce fichier enregistré, il suffit de le lancer. La leçon suivante démarre le service.
Points clés
- Le fichier doit s'appeler docker-compose.yml pour être reconnu.
- Le service jenkins utilise l'image jenkins/jenkins.
- Le port 8080 permet d'ouvrir Jenkins dans un navigateur.
- Le volume conserve les données du conteneur dans le dossier jenkins_home.
- Le réseau net relie le service aux autres conteneurs.
Questions fréquentes
Pourquoi le nom du fichier est-il si important ?
Docker Compose cherche le fichier docker-compose.yml. Un autre nom empêche le lancement du service.
À quoi sert le volume ?
Il enregistre sur la machine ce qui se trouve dans le conteneur. Les données de Jenkins restent donc après un arrêt.
Comment modifier le fichier plus tard ?
Rouvrez-le avec vi docker-compose.yml, faites vos changements, puis enregistrez-les avant de relancer le service.