Le cours Udemy ci-dessous utilise VirtualBox, CentOS7 et Docker, je l'ai donc créé parce que je voulais me souvenir de la procédure. 【Jenkins, From Zero To Hero: Become a DevOps Jenkins Master】 https://www.udemy.com/course/jenkins-from-zero-to-hero/
Il est nécessaire d'installer VirtualBox et Docker, et télécharger l'ISO de CentOS7, mais la procédure change à chaque fois qu'un nouveau sort, et même s'il s'agit d'un article, il ne sera pas utilisable dans quelques mois, donc je l'omettrai et seule la version sera publiée. VirtualBox 6.1.14 platform packages Docker 19.03.12 Docker Compose 1.26.2 CentOS-7-x86_64-Minimal-1810.iso ※http://repos-tx.psychz.net/centos/7.6.1810/isos/x86_64/ Il y a un iso de CentOS dans, alors cliquez dessus pour le télécharger.
utilisateur mac Jenkins d'Udemy, de zéro à héros: devenez un DevOps Ceux qui ne comprenaient pas ce qu'ils disaient dans le cours de maître Jenkins
Cliquez sur Nouveau.
Nom Jenkins Le dossier de la machine est la valeur par défaut Le type est Linux La version est Red Hat (64 bits) À La raison du changement de version en Red Hat (64 bits) est que CentOS est la série Red Hat Linux et CentOS-7-x86_64-Minimal-1810 est pour 64 bits.
Cliquez sur Continuer.
La taille de la mémoire s'affiche. Réglez-le sur 2048 Mo et cliquez sur.
Sélectionnez Créer un disque dur virtuel et cliquez sur Créer.
Sélectionnez VDI et cliquez sur Continuer.
Sélectionnez une taille variable et cliquez sur Continuer.
La passe ci-dessus n'est pas particulièrement falsifiée. Faites la taille 20 Go.
Cliquez sur Créer.
J'ai pu créer un environnement pour créer un serveur Jenkins.
Cliquez sur Paramètres pour ouvrir le réseau.
Modifiez l'affectation de l'adaptateur 1 de NAT à l'adaptateur de pont. Le nom peut différer d'une personne à l'autre ... Puisque ma maison est connectée au réseau via Wi-Fi, j'ai défini en0, qui est Wi-Fi. Le filaire est probablement Ethernet ...?
Cliquez sur OK lorsque vous avez terminé.
Cliquez sur Démarrer ... et avant cela, il y a beaucoup de gens qui ne peuvent pas du tout bouger parce que VirtualBox a le droit d'utiliser le curseur de la souris. La solution consiste à appuyer une fois sur la touche Commande gauche, alors n'oubliez pas cette opération avant de passer à l'étape suivante. Le moment d'apparition est différent pour chaque personne. Maintenant, prenez une seconde et cliquez sur Lancer.
Certaines personnes doivent définir la sécurité et la confidentialité ici, je vous autoriserai donc à surveiller l'entrée depuis le clavier de VirtualBox.app.
Une fois les paramètres définis, redémarrez VirtualBox et redémarrez l'environnement virtuel Jenkins.
Certaines personnes doivent également autoriser la confidentialité, alors vérifiez-le également et redémarrez VirtualBox.
Spécifiez l'ISO (CentOS-7-x86_64-Minimal-1810.iso) de CentOS7 téléchargé ici, mais il est vide (vide). Vous devez le spécifier, cliquez donc sur le dossier à droite. Cliquez sur Ajouter pour accéder à l'emplacement où vous avez enregistré l'ISO et sélectionnez-le. Cliquez sur Choisir.
Cliquez sur Démarrer.
Utilisez les touches haut et bas pour sélectionner et la touche Retour pour confirmer. Déplacez le curseur sur Installer CentOS7 et appuyez sur la touche Retour.
L'installation de CentOS7 va démarrer, alors attendez un peu. Cela se terminera bientôt de manière inattendue.
Paramètres de langue. Sélectionnez japonais et cliquez sur Continuer.
Défiler vers le bas.
Fête automatique ... Cliquez sur sélectionné.
Cliquez sur Terminer sans rien toucher.
Ensuite, la marque △ </ font> a disparu.
Cliquez ensuite sur Réseau et nom d'hôte.
Cliquez sur Ethernet (enp0s3) en haut à droite.
Cliquez sur Terminer lorsque vous avez terminé.
Cliquez sur Démarrer l'installation.
Cliquez sur le mot de passe ROOT pour créer le mot de passe ROOT.
Ici, le mot de passe est défini sur 123456 dans un souci de clarté.
Cliquez deux fois sur Terminer pendant la saisie.
Ensuite, créez un utilisateur.
Entrez comme indiqué dans l'image ci-dessous. Le nom complet doit être jenkins. Le nom d'utilisateur est automatiquement entré chaque fois que vous entrez le nom complet. Si vous faites de cet utilisateur un administrateur, n'oubliez pas de cocher Exiger un mot de passe pour utiliser ce compte. Laissez le mot de passe au 123456.
Lorsque vous avez terminé, cliquez deux fois sur Terminé en haut à gauche.
Attendez ensuite que l'installation soit terminée.
Lorsque vous avez terminé, cliquez sur Terminer les paramètres en bas à droite.
Cliquez sur Redémarrer lorsque vous avez terminé.
Si vous obtenez un journal d'erreurs comme celui-ci et que vous ne pouvez pas redémarrer, c'est à cause de vos paramètres. Modifiez les paramètres → Affichage → Contrôleur graphique de VMS VGA à VBox VGA. * Il a fallu une journée entière pour résoudre ce problème.
Il indique qu'un paramètre non valide a été trouvé, mais ce n'est pas grave. Appuyez sur OK pour recommencer.
Même si l'écran de sélection ISO apparaît au démarrage, vous pouvez l'annuler.
CentOS 7 a démarré avec succès. localhost login:jenkins password:123456 Connectez-vous avec.
clear
Si vous tapez la commande, tous les caractères disparaîtront, mais ce n'est pas efficace, alors n'oubliez pas de vous souvenir de la touche de raccourci. Avec Commande + l, la même opération que la commande d'effacement est effectuée.
ip a
Vous pouvez trouver l'adresse IP en tapant.
En regardant l'inet de enp0s3, il s'agit de 192.168.0.6. Ce sera l'adresse IP de cet environnement virtuel.
Avec VirtualBox Manager ouvert, sélectionnez File ® Host Network Manager.
[Onglet Fichier]
Cliquez sur Créer.
Assurez-vous que l'adresse IP est 192.168.56.101. Confirmez que vboxnet0 a été créé et cliquez sur Fermer. Je pense que tout le monde aura la même adresse IP, mais si elles sont différentes, vous devrez remplacer l'adresse IP utilisée dans les étapes suivantes.
Définissez l'adaptateur hôte uniquement dans les paramètres de la machine virtuelle → réseau → adaptateur 2 créé précédemment.
Cliquez sur OK.
Démarrez l'environnement virtuel et connectez-vous. localhost login:jenkins password:123456
Exécutez la commande nmtui. Cette commande vous permet de configurer visuellement les paramètres réseau au lieu des commandes. Cela s'appelle l'interface graphique Iwaruyu. Il semble que vous puissiez le faire avec une commande, mais je vais omettre la méthode. C'est un problème d'ouvrir divers fichiers et de les modifier avec du texte vi.
L'écran nmtui est utilisé avec les touches haut et bas et la touche Retour. Utilisez les touches haut et bas pour vous déplacer et sélectionnez Modifier une connexion avec la touche Retour.
Sélectionnez enp0s3 avec la touche Retour.
Modifiez IPv6 en Ignorer avec la touche Retour. C'est OK si vous pouvez confirmer que la connexion automatique est [X].
Déplacez le curseur sur OK et sélectionnez-le.
Sélectionnez ensuite * * * * *. (En fait, cela devrait être enp0s8, mais il y a quelque chose qui ne va pas. Ma connaissance a également affiché la même chose.)
Si le nom du profil est bogué, laissez-le enp0s8. Changez la CONFIGURATION Ipv4 en Manuel et les adresses en 192.168.56.101/24.
Puis changez Ipv6 en Ignorer. C'est OK si vous pouvez confirmer que la connexion automatique est [X].
Sélectionnez OK et quittez avec Retour → Quitter.
Entrez ensuite la commande suivante.
service NetworkManager restart
service network restart
Vous êtes maintenant prêt à accéder à CentOS de VirtualBox à partir de mac en utilisant le terminal.
Ouvrez une recherche Spotlight avec Commande + Espace, tapez terminal.app et entrez la touche Retour pour lancer le terminal. C'est une force de mac différente de Windows.
Pour Windows, je pense que vous devriez utiliser du mastic ou du teraterm. (Je ne pense pas que Windows le regarde car je pense que les étapes jusqu'à présent sont assez différentes de Windows ...)
Entrez la commande suivante pour établir une connexion ssh avec le terminal.
ssh [email protected]
Entrez 123456 lorsque vous êtes invité à entrer un mot de passe.
Ensuite, vous pouvez accéder à Centos sur VirtualBox avec un terminal. Maintenant, après cela, si vous démarrez la machine virtuelle avec VirtualBox, démarrez CentOS et réduisez-le de manière appropriée, vous pouvez utiliser Centos du côté mac. Il est difficile d'opérer sur l'écran affiché par VirtualBox.
Exécutez yum list comme un essai. À l'origine, après le démarrage de la mise à jour de yum, le logiciel installé par yum est affiché dans une liste, mais une connaissance a écrit un article alors qu'il ne fonctionnait pas.
Je l'ai fait sans rien faire, mais si cela ne fonctionne pas, veuillez vous y référer. https://qiita.com/yuri2509/items/6715fe853515a8719518
Vérifiez si vous pouvez vous connecter au réseau une fois.
ping google.com
S'il est connecté, il ressemblera à l'image. Le journal continuera à s'écouler indéfiniment, appuyez donc sur Ctrl + c pour l'interrompre.
Recherchez sur google docker pour centos et ouvrez la page Web Installer Docker Engine sur CentOS | Documentation Docker.
Basé sur cette page, entrez les commandes du haut. Je publierai les commandes pour le moment, mais les commandes sur le site officiel changent tous les jours, donc les commandes peuvent être complètement différentes.
Tout d'abord, désinstallez l'ancienne version de Docker (cela n'a pas de sens si vous n'avez pas Docker)
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
Je reçois beaucoup de journaux disant que les arguments ne correspondent pas. En d'autres termes, docker n'est pas installé.
Ensuite, installez le logiciel yum-utils qui rend yum pratique.
sudo yum install -y yum-utils
Ensuite, créez un référentiel pour le docker.
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
Vous avez maintenant créé docker-ce.repo dans le répertoire suivant: /etc/yum.repos.d ┗docker-ce.repo
Enfin, j'en suis venu à installer docker. Procédez comme suit:
sudo yum install docker-ce docker-ce-cli containerd.io
Il est normal de s'arrêter au milieu. Il cherche un site miroir. Par conséquent, veuillez vous abstenir de saisir une clé. Si vous le saisissez, l'installation sera interrompue au milieu, vous devrez donc réexécuter la commande. (Je l'ai fait une fois) Si [y / d / N] ou [y / N] apparaît sur le chemin, entrez y pour continuer.
Enfin terminé! S'affiche, l'installation de Docker est terminée.
Démarrez docker.
sudo systemctl start docker
Rien ne se passe, mais ça va.
Bien qu'il ne fasse pas partie de la collection de commandes sur le site officiel, il exécute la commande pour démarrer Docker automatiquement au démarrage.
sudo systemctl enable docker
Pour vérifier si docker est installé, essayez d'afficher le processus docker avec la commande suivante.
docker ps
En ce moment, je l'exécute en tant qu'administrateur, donc cela fonctionne bien, mais je pense avoir créé l'utilisateur jenkins lors de l'installation de CentOS. Si vous utilisez la commande su pour changer l'utilisateur en utilisateur jenkins et exécutez docker ps là-bas, cela échouera car vous n'avez pas l'autorisation. Par conséquent, exécutez la commande suivante afin qu'elle puisse être exécutée.
sudo usermod -aG docker jenkins
Pour refléter ce paramètre, utilisez exit pour déconnecter la connexion ssh, puis vous reconnecter au ssh. Désormais, même les utilisateurs de Jenkins peuvent exécuter docker ps et travailler.
Recherchez l'installation de docker compose sur google.
Ouvrez Installer Docker Compose | Documentation Docker.
Si vous descendez un peu, il y a des onglets tels que mac et Windows, alors sélectionnez Linux.
Entrez la commande qui y est affichée. Cela change également tous les jours, il est donc préférable de se référer à la voile officielle, mais je posterai la commande pour le moment.
commande d'installation de docker compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Cela se terminera bientôt.
Selon la commande, docker-compose sera installé dans / usr / local / bin.
J'ai déplacé le répertoire avec cd, affiché le chemin avec la commande pwd et affiché la partition (celle avec -rw-r - r--) avec la commande ll.
Puisque vous ne disposez pas de l'autorisation d'exécution, vous ne disposez pas de l'autorisation d'exécution pour docker-compose en l'état. Par conséquent, accordez l'autorisation d'exécution.
Vous pouvez accorder l'autorisation d'exécution en exécutant la commande suivante.
sudo chmod +x /usr/local/bin/docker-compose
La partition est passée de -rw-r - r-- à -rwxr-xr-x! Cela signifie que vous avez reçu l'autorisation d'exécution.
Si docker-compose est installé, vous pouvez afficher la version, alors vérifiez de cette façon.
docker-compose -v
C'est la version 1.27.1 de docker-compose. L'installation est réussie.
Recherche google avec l'image de docker jenkins.
Ouvrez jenkins / jenkins. Il s'agit d'une image Docker maintenue par l'équipe jenkins. Celui avec jenkins est l'image officielle, mais attention car c'est une erreur!
Ensuite, la commande à installer est sur le côté droit, alors copiez-la et collez-la et exécutez-la sur le terminal. * Faites cela lorsque vous êtes connecté à CentOS avec une connexion ssh.
docker pull jenkins/jenkins
Vous avez maintenant une image Docker pour jenkins. Assurez-vous d'avoir l'image jenkins Docker avec la commande suivante:
docker images
En passant, où sont les données Docker? Vous pouvez le savoir en consultant les informations Docker.
docker info
De nombreuses informations sont affichées. Le répertoire racine de docker y est écrit, mais il est difficile à trouver.
Par conséquent, vous pouvez le trouver rapidement avec la commande suivante.
docker info | grep -i root
La commande grep est utile pour rechercher des chaînes. À partir de la chaîne de caractères affichée par le menu fixe info, la ligne contenant la racine est extraite et affichée. En ajoutant -i, vous pouvez rechercher quelle que soit la casse.
J'ai pu confirmer que / var / lib / docker est le répertoire racine de Docker. les données relatives au docker sont stockées dans ce fichier.
Ensuite, créez un répertoire pour stocker les données jenkins. Créez sous la forme / home / jenkins / jenkins. Commencez par aller dans le répertoire personnel, créez un répertoire jenkins, puis créez-y un répertoire jenkins.
cd /home
mkdir jenkins
cd jenkins
mkdir jenkins
pwd
Vous avez maintenant créé le répertoire jenkins. Enfin, la commande pwd est utilisée pour afficher le répertoire courant.
Pour vous entraîner, essayez de renommer le répertoire à l'aide de la commande mv.
Avant correction
/home/jenkins/jenkins
modifié
/home/jenkins/jenkins-data
Exécutez la commande suivante.
cd /home
cd jenkins
mv jenkins jenkins-data
ll
cd jenkins-data
pwd
J'ai pu changer le nom du répertoire en toute sécurité.
Ensuite, créez docker-compose.yml dans / home / jenkins / jenkins.
Exécutez la commande suivante pour créer un nouveau fichier.
vi docker-compose.yml
Pour expliquer brièvement vi, le mode par défaut est le mode normal qui accepte les commandes, vous pouvez entrer des caractères en mode insertion avec i, annuler le mode insertion avec esc et passer en mode normal, et appuyer sur ": wq" en mode normal Lorsqu'il est exécuté, il enregistre et quitte, se ferme avec ": q" et se termine de force sans enregistrer avec ": q!". Si vous avez autant de connaissances, je pense que vous pouvez faire quelque chose. Peut être.
J'écrirai de plus en plus avec vi. Tout d'abord, spécifiez la version 3.
docker-compose.yml
version: '3'
Ensuite, spécifiez le nom du conteneur jenkins.
docker-compose.yml
version: '3'
services:
jenkins:
container_name: jenkins
Spécifiez l'image Docker. Cela spécifie le nom de l'image qui apparaît dans le référentiel lorsque vous exécutez des images Docker. Je pense que c'est une bonne idée de prendre l'habitude d'écrire après l'avoir confirmé.
docker-compose.yml
version: '3'
services:
jenkins:
container_name: jenkins
image: jenkins/jenkins
Spécifiez ensuite le port. Puisque jenkins est un serveur http, définissez-le sur 8080. Le côté gauche est le numéro de port du serveur jenkins et le côté droit est le numéro de port lors de l'accès avec mac.
docker-compose.yml
version: '3'
services:
jenkins:
container_name: jenkins
image: jenkins/jenkins
ports:
- "8080:8080"
Ensuite, créez un volume. Docker a le concept de volume. Si vous créez un conteneur Docker puis le détruisez, toutes les données du conteneur seront époustouflées. Et si j'ai des données que je ne veux pas effacer? La réponse est de l'enregistrer dans un volume. Pour l'instant, ce serait bien s'il y avait autant de reconnaissance. Appuyez une fois sur la touche Échap pour passer du mode insertion au mode normal, enregistrez avec: wq, quittez et créez de l'espace pour le volume. Assurez-vous que vous êtes dans le répertoire suivant:
/home/jenkins/jenkins-data
Ensuite, créez le répertoire jenkins_home, qui est la zone du volume.
mkdir jenkins_home
Vous pouvez stocker les données sur le conteneur Docker dans ce fichier. Une fois créé, revenez à l'édition de docker-compose.yml.
vi docker-compose.yml
Spécifiez le volume. La gauche est le répertoire créé précédemment (destination de la copie), et la droite est le répertoire sur le conteneur Docker (source de la copie). Les informations indiquant que le répertoire de droite est / var / jenkins_home au lieu de / var / lib / jenkins_home sont obsolètes.
docker-compose.yml
version: '3'
services:
jenkins:
container_name: jenkins
image: jenkins/jenkins
ports:
- "8080:8080"
volumes:
- "$PWD/jenkins_home:/var/lib/jenkins_home"
Ensuite, écrivez quatre lignes d'informations sur le réseau. L'un est sous jenkins: et l'autre sous docker-compose.yml.
docker-compose.yml
version: '3'
services:
jenkins:
container_name: jenkins
image: jenkins/jenkins
ports:
- "8080:8080"
volumes:
- "$PWD/jenkins_home:/var/lib/jenkins_home"
networks:
- net
networks:
net:
La forme finale est la suivante.
docker-compose.yml
version: '3'
services:
jenkins:
container_name: jenkins
image: jenkins/jenkins
ports:
- "8080:8080"
volumes:
- "$PWD/jenkins_home:/var/lib/jenkins_home"
networks:
- net
networks:
net:
Appuyez sur la touche esc pour revenir au mode normal et appuyez sur: wq pour enregistrer.
Lorsque vous avez terminé, modifiez les autorisations sur le répertoire jenkins_home.
sudo chown 1000:1000 jenkins_home -R
Accédez au répertoire contenant docker-compose.yml et démarrez le conteneur docker.
docker-compose up -d
Le -d de fin signifie s'exécuter en arrière-plan.
Exécutez la commande suivante.
docker ps
Le serveur Jenkins s'exécute maintenant sur le conteneur Docker.
[Si non affiché]
Si jenkins s'affiche avec la commande suivante
Échec du démarrage du conteneur Docker.
docker ps -a
Vous pouvez afficher le journal avec la commande suivante
Vous pouvez rechercher la cause de l'erreur.
docker-compose logs jenkins
Le volume du côté du conteneur Docker/var/lib/jenkins_home
ne pas,/var/jenkins_Si les informations qui sont à la maison sont anciennes
Comme je l'ai écrit plus tôt, c'est en affichant ce journal
Je suis venu à une solution.
Comme le mot de passe généré par jenkins est requis, exécutez la commande suivante pour afficher le journal avec docker.
docker logs -f jenkins
Vous verrez les mots "1a193f6a36674f58856aed0b3041bc13", copiez-le et notez-le.
C'est la dernière poussée.
Quelle était l'adresse IP CentOS sur la VirtualBox? Oui, c'était 192.168.56.101. Maintenant, attachez-y le numéro de port 8080 qui indique le serveur http et entrez «192.168.56.101:8080» dans l'URL du navigateur Web.
Peux tu aller ...?
J'ai pu accéder à jenkins en toute sécurité ~! Mammouth heureux!
Vous avez maintenant construit un serveur Jenkins avec un conteneur Docker sur CentOS 7 de VirtualBox et pouvez accéder au serveur Jenkins depuis votre PC local.
Pour finir, collez le 1a193f6a36674f58856aed0b3041bc13 que vous avez noté précédemment et assurez-vous que vous pouvez y accéder. (Cette chaîne varie d'une personne à l'autre!)
Ça me va. Comment utiliser Jenkins est expliqué ci-dessous. Si vous le souhaitez, veuillez également le lire.
Qu'est-ce que Jenkins? ] J'expliquerai de l'installation de Jenkins à comment l'utiliser de la manière la plus simple au monde https://qiita.com/JUN_WEB_FREE/items/c7b42528a87911386391
Je n'ai pas expliqué en particulier docker cette fois, mais je le recommande vivement car les sites suivants sont faciles à comprendre!
Planète renard https://kitsune.blog/engineer/docker