Qu'est-ce que Jenkins? Jenkins est un outil d'automatisation libre et open source qui peut être utilisé pour automatiser les tâches techniques répétitives à l'aide d'une intégration continue et d'une livraison continue.
Dans ce tutoriel, nous expliquerons comment installer Jenkins avec Docker sur Ubuntu 18.04 serveur. Nous expliquerons également comment exécuter Jenkins avec Docker de manière à garder les données et les configurations de Jenkins.
Commencer
Commençons à mettre à jour le référentiel de votre serveur avec la dernière version. Vous pouvez le mettre à jour avec la commande suivante:
Mise à jour apt-get -y
APT-GETT LACTRADE -Y
Une fois le référentiel mis à jour, redémarrez votre serveur pour appliquer toutes ces modifications.
Installer Docker
Ensuite, vous devrez installer Docker dans votre serveur.
Tout d'abord, téléchargez et ajoutez la clé Docker CE GPG avec la commande suivante:
wget https: // télécharger.docker.com / linux / ubuntu / gpg
APT-KEK ADD GPG
Ensuite, ajoutez le référentiel Docker CE à APT avec la commande suivante:
nano / etc / apt / sources.liste.d / docker.liste
Ajouter la ligne suivante:
deb [arch = amd64] https: // télécharger.docker.com / linux / ubuntu xenial stable
Enregistrer et fermer le fichier, lorsque vous avez terminé. Ensuite, mettez à jour le référentiel avec la commande suivante:
Mise à jour apt-get -y
Une fois le référentiel mis à jour, installez Docker CE avec la commande suivante:
apt-get install docker-ce -y
Après avoir installé Docker CE, vérifiez l'installation de Docker avec la commande suivante:
docker d'état systemctl
Créer un volume Docker pour les données et le journal
Le volume Docker est une méthode pour persister les données et la configuration dans les conteneurs Docker. Lorsque vous supprimez un conteneur, les données et les configurations sont toujours disponibles dans le volume Docker. Vous devrez donc créer des données et des volumes de journaux pour sauvegarder les données et configurations Jenkins, y compris les journaux, les plugins, la configuration du plugin et la configuration du travail.
Commençons par créer du volume pour les données et connectez-vous avec la commande suivante:
Volume de docker Créer Jenkins-Data
Volume de docker Créer Jenkins-log
Une fois les volumes créés, vous pouvez les énumérer avec la commande suivante:
volume docker ls
Vous devriez voir la sortie suivante:
Nom du volume du conducteur
Jenkins-Data local
Jenkins-log local
Installer Jenkins avec Docker
Ensuite, vous devrez créer un fichier docker pour extraire et construire l'image Jenkins avec les paramètres requis.
Vous pouvez créer un fichier docker avec la commande suivante:
Mkdir Docker
nano docker / dockerfile
Ajouter les lignes suivantes:
De Jenkins / Jenkins
Étiqueter se mainteer = "hitjethva @ gmail.com "
Racine de l'utilisateur
Exécutez MKDIR / VAR / LOG / JENKINS
Exécuter mkdir / var / cache / jenkins
Exécutez Chown -r Jenkins: Jenkins / var / Log / Jenkins
Exécutez Chown -r Jenkins: Jenkins / var / cache / jenkins
Utilisateur Jenkins
Env java_opts = "- xmx8192m"
Env jenkins_opts = "- handlerccountMax = 300 --logfile = / var / log / jenkins / jenkins.enregistrer
--webroot = / var / cache / jenkins / war "
Enregistrer et fermer le fichier, lorsque vous avez terminé. Ensuite, construisez l'image Jenkins avec la commande suivante:
cd docker
docker build -t myjenkins .
Vous devriez voir la sortie suivante:
Envoi du contexte de construction à Docker Daemon 2.048KB
Étape 1/10: de Jenkins / Jenkins
---> AE831925B271
Étape 2/10: étiquette mainteerer = "hitjethva @ gmail.com "
---> Courir en 673BF1ECC3EA
Suppression du conteneur intermédiaire 673BF1ECC3EA
---> CAD1BEE88092
Étape 3/10: racine de l'utilisateur
---> Courir en 36909C427D44
Suppression du conteneur intermédiaire 36909C427D44
---> 2C381CC3A773
Étape 4/10: Exécutez MKDIR / VAR / LOG / JENKINS
---> Exécution en 337C0310DB99
Suppression du conteneur intermédiaire 337C0310DB99
---> 5AA93B90C67E
Étape 5/10: Exécutez MKDIR / VAR / CACHE / JENKINS
---> Courir en 2C77577AE28B
Retrait du conteneur intermédiaire 2C77577AE28B
---> 5016430C07EB
Étape 6/10: Exécutez Chown -r Jenkins: Jenkins / var / log / jenkins
---> Exécution dans E4C820F66103
Suppression du conteneur intermédiaire E4C820F66103
---> C8D2830A84C5
Étape 7/10: Exécutez Chown -r Jenkins: Jenkins / var / cache / jenkins
---> Exécution en D024606146D5
Suppression du conteneur intermédiaire D024606146D5
---> A11D613CFF18
Étape 8/10: l'utilisateur Jenkins
---> Exécution en 478F3C067131
Suppression du conteneur intermédiaire 478F3C067131
---> EDEA568D5564
Étape 9/10: env java_opts = "- xmx8192m"
---> Courir dans 5AE52922F52B
Retrait du conteneur intermédiaire 5AE52922F52B
---> CB1285B1BC72
Étape 10/10: env jenkins_opts = "- handlerccountmax = 300 --logfile = / var / log / jenkins / jenkins.enregistrer
--webroot = / var / cache / jenkins / war "
---> Courir en 973FB9257C29
Suppression du conteneur intermédiaire 973FB9257C29
---> B131C5ADF03E
Construit avec succès B131C5ADF03E
Tagué avec succès Myjenkins: le dernier
La nouvelle image Jenkins avec nom Myjenkins a été construite avec succès.
Exécutez le conteneur Jenkins avec des données et un volume de journal
L'image Jenkins est maintenant construite avec les paramètres requis. Ensuite, vous devrez exécuter Jenkins Container en spécifiant les données et les volumes de journalisation comme point de montage.
Vous pouvez exécuter le conteneur Jenkins avec la commande suivante:
Docker Run -P 8080: 8080 -P 50000: 50000 --name = Jenkins-Master - Mount Source = Jenkins-Log,
Target = / var / log / jenkins –mount source = jenkins-data, cible = / var / jenkins_home -d myjenkins
Une fois le conteneur Jenkins démarré, vous pouvez vérifier le conteneur en cours d'exécution avec la commande suivante:
docker ps
Vous devriez voir la sortie suivante:
Statut créé de la commande d'image d'image de conteneur ID de conteneur
3DEC02A7077C MYJENKINS "/ SBIN / TINI - / USR /…" Il y a 6 minutes en haut de 6 minutes
Noms ports
0.0.0.0: 8080-> 8080 / TCP, 0.0.0.0: 50000-> 50000 / TCP Jenkins-Master
Ensuite, vous devrez vérifier le fichier journal de Jenkins si tout fonctionne bien ou non:
docker exec jenkins-master tail -f / var / log / jenkins / jenkins.enregistrer
Vous devriez voir la sortie suivante:
Veuillez utiliser le mot de passe suivant pour passer à l'installation:
B437BA21655A44CDA66A75B8FBDDF5B8
Cela peut également être trouvé à: / var / jenkins_home / secrets / initialAdminPassword
**************************************************** ***********
**************************************************** ***********
**************************************************** ***********
Veuillez noter le mot de passe ci-dessus, vous en aurez besoin pendant l'assistant de configuration du Web Jenkins.
Accédez à l'interface Web de Jenkins
Maintenant, ouvrez votre navigateur Web et saisissez l'URL http: // votre serveur: 8080. Vous serez redirigé vers l'écran de configuration de Jenkins comme indiqué ci-dessous:
Fournissez le mot de passe de votre administrateur et cliquez sur le Continuer bouton. Vous devriez voir la page suivante:
Maintenant, cliquez sur le "Installer les plugins suggérés«Pour installer les plugins requis. Une fois l'installation terminée. Vous devriez voir la page suivante:
Maintenant, fournissez votre nom d'utilisateur d'administration, votre mot de passe et votre nom complet puis cliquez sur le Sauvegarder et Finir bouton. Vous devriez voir la page suivante:
Maintenant, cliquez simplement sur le Sauver et terminer bouton. Une fois la configuration terminée avec succès, vous devriez voir la page suivante:
Maintenant, cliquez sur le "Commencez à utiliser Jenkins". Vous serez redirigé vers le tableau de bord Jenkins comme indiqué dans la page suivante:
Maintenant, cliquez sur le "Créer de nouveaux emplois" bouton. Vous devriez voir la page suivante:
Maintenant, fournissez votre nom de travail et cliquez sur le D'ACCORD bouton. Vous devriez voir la page suivante:
Maintenant, cliquez sur le bouton Enregistrer pour sauvegarder tous les paramètres. Vous devriez voir vos travaux nouvellement créés dans la page suivante:
Tester les données persistantes de Jenkins
Jenkins est maintenant installé et configuré. Ensuite, vous devrez tester si les données et les journaux Jenkins persistent après avoir retiré le conteneur Jenkins.
Pour ce faire, arrêtez d'abord et supprimez le conteneur Jenkins avec la commande suivante:
Docker Stop Jenkins-Master
Docker RM Jenkins-Master
Maintenant, recommencez le conteneur Jenkins avec la commande suivante:
Docker Run -P 8080: 8080 -P 50000: 50000 --name = Jenkins-Master - Mount Source = Jenkins-Log,
Target = / var / log / jenkins –mount source = jenkins-data, cible = / var / jenkins_home -d myjenkins
Une fois le conteneur Jenkins démarré, ouvrez votre navigateur Web et saisissez l'URL http: // votre serveur: 8080. Vous serez redirigé vers la page suivante:
Maintenant, fournissez votre nom d'utilisateur et votre mot de passe d'administration puis cliquez sur le Signe dans bouton. Vous devriez voir le tableau de bord Jenkins dans la page suivante:
Cela signifie que vous avez conservé toutes les données, les journaux, la configuration de configuration et les installations de plugin. Tu devrais aussi voir que ton myjenkinsjob est toujours là.
Vous pouvez maintenant conteneriser votre processus Devop avec Jenkins et Docker, profitez.