Étape par étape, cet article vous apprend à utiliser jenkins+docker pour implémenter le mode maître-esclave

♥ Avant-propos

Le mode maître-esclave de Jenkins doit être familier à tout le monde. Au cours du processus d'apprentissage, tout le monde a construit un environnement Jenkins localement pour faciliter l'apprentissage, puis l'a réalisé via JavaWeb. Tout le monde semble être très intéressé par la mise en œuvre du mode maître-esclave sous docker. Aujourd'hui, je vais vous expliquer comment jouer à travers cet article, j'espère qu'il vous sera utile.

1. Préparation de l'environnement

  1. Préparez un serveur Linux (serveur cloud, serveur Linux auto-construit peut être)

  2. Installer Docker sur le serveur Linux

  3. Tirez une image jenkins vers le bas, puis démarrez un conteneur jenkins

  4. Déroulez cette image jenkins/ssh-slave dans docker (l'image fournie par jenkins est spécialement utilisée comme image maître-esclave)

  5. OK, les préparatifs sont terminés

Si vous souhaitez apprendre les tests automatisés, je vous recommande ici une série de vidéos. Cette vidéo peut être considérée comme le premier didacticiel de test d'automatisation d'interface sur l'ensemble du réseau à la station B. Dans le même temps, le nombre d'utilisateurs en ligne a atteint 1 000, et il y a des notes à collecter et divers échanges techniques de Lu Dashen : 798478386     

[Mise à jour] La collection la plus détaillée de didacticiels pratiques pour les tests automatisés des interfaces Python enseignées par la station B (la dernière version du combat réel)_哔哩哔哩_bilibili [Mise à jour] La collection la plus détaillée de didacticiels pratiques pour les tests automatisés de Python interfaces enseignées par la station B (combat réel) La dernière version) contient un total de 200 vidéos, dont : 1. [Automation des interfaces] La situation actuelle du marché des tests de logiciels et les normes de capacité des testeurs. , 2. [Interface Automation] Entièrement compétent dans la bibliothèque Requests et la logique d'appel de méthode sous-jacente, 3. [Interface Automation] combat d'automatisation d'interface et application d'expressions régulières et d'extracteurs JsonPath, etc. Pour des vidéos plus passionnantes, veuillez prêter attention à le compte UP. https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337&vd_source=488d25e59e6c5b111f7a1a1a16ecbe9a

2. Prêt à commencer le travail
La première étape : docker permet l'accès à distance, vous devez ouvrir le port 2375, ce port doit être ouvert avec précaution (j'utilise centos)
  1. Ouvrez le fichier docker.service
    VIM /usr/lib/systemd/system/docker.service

  2. Ajoutez le contenu suivant sous [Service] dans le fichier docker.service
    [Service]
    ExecStart=
    ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker. chaussette

  3. Redémarrez le service Docker et laissez Docker relire le fichier de configuration
    systemctl daemon-reload
    systemctl restart docker

  4. Vérifiez, vérifiez le processus Docker, si le processus démon Docker écoute déjà le port TCP de 2375, même si le port 2375 est ouvert avec succès

    image

  5. Vérification plus approfondie, accédez à l'hôte docker via d'autres machines
    sudo docker -H tcp://139.129.130.123:2375 images
    La commande ci-dessus équivaut à exécuter directement la commande docker images sur l'hôte docker, et elle peut revenir correctement, indiquant qu'il y a ce n'est pas un problème

Étape 2 : Téléchargez l’image du site officiel (d’ailleurs, ne l’oubliez pas)
  1. docker pull jenkins/ssh-esclave

Étape 3 : Créez une nouvelle image avec l'environnement python3 basé sur jenkins/ssh-slave
  1. Créer un répertoire dockerfile

  2. Placez le fichier du package python dont dépend l'exécution du projet dans le répertoire dockerfile (comment générer le fichier dépendant ne sera pas écrit, par défaut vous êtes un maître)

requests==2.24.0
openpyxl
ddt
pytest
selenium
pymysql
pyyaml==5.3.1
faker
jsonpath
BeautifulReport
unittestreport
rsa
pytest-html
Appium-Python-Client
  1. Créez un fichier nommé sources.list (le nom ne peut pas être modifié et doit être ce nom), ajoutez le contenu suivant
    dans le répertoire jenkins/ssh-slave Mirror /etc/apt/
    deb http://mirrors.163.com/debian / buster principal deb de contrib non libre http://mirrors.163.com/debian/ buster-updates principal deb de
    contrib non libre http://mirrors.163.com/debian/ buster-backports principal deb de contrib non libre -src http://mirrors.163.com/debian/ buster principale contrib non libre deb-src http://mirrors.163.com/debian/ buster-updates principale contrib non libre deb-src http:// miroirs.163.com/debian/ buster-backports principale contrib non libre deb http://mirrors.163.com/debian-security/ buster/updates principale contrib non libre deb-src http://mirrors.163. com/ debian-security/buster/updates contribution principale non libre






    Sources.list Description : Le jenkins/ssh-slave officiel n'a pas de python et vous devez installer python pour mettre à jour son package d'installation. Pour le moment, si vous utilisez sa source miroir par défaut, ce sera très lent, nous changeons donc vers un fichier plus rapide. Source, écrasez simplement son fichier original, ici vous devez le modifier en fonction de votre propre numéro de version, la mienne est la version buster, bien sûr, elle devrait être la même que la mienne après l'avoir téléchargée.

  2. écrire un fichier Docker

FROM jenkins/ssh-slave:latest
USER root
WORKDIR /app
ADD requirements.txt  /app
ADD sources.list /etc/apt/
RUN echo export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8" >> /etc/profile
RUN apt-get -y update  && apt-get -y install python3 && apt-get -y install python3-pip && pip3 install -r requirements.txt -i https://pypi.douban.com/simple
  1. Exécutez la commande de génération d'image
    docker build -t jenkins/ssh-slave:v2.0 .

Étape 4 : Configurer le nœud esclave jenkins
  1. Accédez à la page de configuration des nœuds
    gérer jenkins ---> Slave Node (gestion des nœuds) ---> ConfigureClouds

image

Vous verrez la page suivante

 

  1. Cliquez sur Ajouter un nouveau cloud et sélectionnez Docker dans la liste déroulante. Après avoir cliqué, vous arriverez à la page suivante

    image

  2. Cliquez sur les détails de Docker Cloud pour configurer, la page est la suivante

    image

  3. Cliquez sur les modèles Docker Agent, vous verrez la page suivante

    image

  4. Cliquez sur les options avancées ci-dessous

    image

  5. La configuration spécifique des options avancées est comme indiqué dans la figure ci-dessous

    image

    image

  6. N'oubliez pas de sauvegarder une fois la configuration terminée, il est préférable de sauvegarder lors de la configuration pour développer une bonne habitude.

Étape 5 : Liez l'esclave Docker à votre tâche Jenkins
  1. Créez une nouvelle tâche, sélectionnez Freestyle Project

    image

  2. Restreindre le projet pour exécuter le nœud, sélectionner le nœud nouvellement créé (Étiquettes)

    image

  3. Configurer Git

    image

  4. Configurer les commandes shell

    image

  5. Rapport de test de configuration

image

image

image

Sixième étape : construisez votre projet
  1. Après avoir démarré la construction, vous verrez la figure suivante dans votre file d'attente de construction

image

2. Une fois la construction terminée, cliquez sur votre projet et il y aura un enregistrement de construction lorsque vous viendrez ici. Cliquez dessus pour voir le journal de construction.

image

3. Afficher le rapport de test

image

4. Le rapport de test est le suivant

image

 

Je suppose que tu aimes

Origine blog.csdn.net/m0_73409141/article/details/132233434
conseillé
Classement