Accéder et déboguer le conteneur Docker Circle CI avec ssh

introduction

Il y avait un cas où le test qui passait localement ne passait pas dans CircleCi, donc je l'ai connecté au conteneur de CircleCi avec ssh et débogué. Généralement, c'est comme Officiel, mais je pense qu'il peut y avoir des suppléments, donc je quitterai la procédure à ce moment-là. Je vais. C'est un environnement Windows, alors n'ayez pas peur.

supposition

--Il est supposé que ssh ne peut pas être utilisé.

Préparation

Pour vous connecter à CircleCi avec ssh, vous devez pouvoir vous connecter à github avec ssh. Je pense que vous devriez le définir en faisant référence à ici.

Redémarrez le conteneur à déboguer avec ssh activé

Accédez à CircleCi et sélectionnez "Rerun Job With SSH" pour le Job que vous souhaitez déboguer. Vous devez sélectionner Job au lieu de WorkFlow.

image.png

L'étape Activer SSH est ajoutée et le flux de travail démarre comme indiqué ci-dessous. Le numéro de port et l'adresse IP de l'hôte seront affichés dans le cadre blanc ci-dessous, utilisez-le donc pour vous connecter au conteneur avec ssh.

無題.png

Connectez-vous au conteneur avec ssh

Connectez-vous au conteneur avec ssh en fonction des informations affichées précédemment. Si on vous demande si vous souhaitez vous connecter en chemin, répondez simplement oui.

ssh -p <port> <ip address>

Maintenant que vous êtes connecté au conteneur, vous devriez pouvoir obtenir toutes les informations dont vous avez besoin pour le débogage. Vous pouvez également télécharger des fichiers et des répertoires de conteneur en utilisant le scp suivant tout en revenant à local.

scp -r -P <port> root@<ip address>:<Le chemin du répertoire que vous souhaitez copier> <Chemin de destination de téléchargement local>

À la fin

Même si j'utilise Docker, les résultats dans CircleCi et Local sont parfois différents, et je débogue à ce moment-là. En premier lieu, je voudrais en savoir plus sur Docker et OS afin que le débogage ne soit pas nécessaire.

Recommended Posts

Accéder et déboguer le conteneur Docker Circle CI avec ssh
Surveillance des conteneurs CI / CD Docker
Hello World avec Docker et langage C
Microservices avec Docker et Cloud Performance
[Linux] Démarrer le conteneur Apache avec Docker
À propos de Docker, faux serveur et conteneur
Créer un environnement de débogage sur un conteneur - Créer un environnement de développement local pour les didacticiels Rails avec Docker -
Commencer par installer Docker sur EC2 et exécuter Yellowfin dans un conteneur
Déboguer avec VSCode + Next.js + Docker (+ Chrome) (prend en charge à la fois le côté serveur et le côté client)
Construction de Rails 6 et environnement PostgreSQL avec Docker
Communiquer entre Gitlab et Gitlab Runner lancé avec Docker
Surveillez le conteneur Docker et le processus SystemD sur le même hôte avec Zabbix sur Ubuntu.
Comment créer un serveur Jenkins avec un conteneur Docker sur CentOS 7 de VirtualBox et accéder au serveur Jenkins à partir d'un PC local
Découvrez .NET 5 avec Docker et Visual Studio Code
IDE et Maven compilent avec toutes les informations de débogage
Paramètre pour quitter le conteneur Docker avec VScode
Créez un notebook Jupyter avec Docker et exécutez ruby
Mettre à jour l'image du conteneur avec KUSANAGI s'exécute sur Docker
Préparer un environnement de scraping avec Docker et Java
Opérations de conteneur Docker avec l'API Docker-Client pour Java
Essayez d'utiliser un autre conteneur de servlet Jetty avec Docker
[Docker] Comment mettre à jour à l'aide d'un conteneur dans Heroku et comment gérer l'erreur de migration