Greifen Sie mit ssh auf den Circle CI Docker-Container zu und debuggen Sie ihn

Einführung

Es gab einen Fall, in dem der lokal bestandene Test in CircleCi nicht bestanden wurde, daher habe ich ihn mit ssh mit dem Container von CircleCi verbunden und debuggt. Im Allgemeinen ist es wie Offiziell, aber ich denke, dass es einige Ergänzungen geben kann, also werde ich das Verfahren zu diesem Zeitpunkt verlassen. Ich werde. Es ist eine Windows-Umgebung, also keine Angst.

Annahme

Vorbereitung

Um mit ssh eine Verbindung zu CircleCi herzustellen, müssen Sie in der Lage sein, mit ssh eine Verbindung zu github herzustellen. Ich denke, Sie sollten es unter Bezugnahme auf [hier] einstellen (https://qiita.com/shizuma/items/2b2f873a0034839e47ce).

Starten Sie den zu debuggenden Container mit aktiviertem ssh neu

Greifen Sie auf CircleCi zu und wählen Sie "Job mit SSH erneut ausführen" für den Job, den Sie debuggen möchten. Sie sollten Job anstelle von WorkFlow auswählen.

image.png

Der Schritt SSH aktivieren wird hinzugefügt und der Workflow wird wie unten gezeigt gestartet. Die Portnummer und die Host-IP-Adresse werden im weißen Rahmen unten angezeigt. Verwenden Sie diese Option, um mit ssh eine Verbindung zum Container herzustellen.

無題.png

Mit ssh an den Container anschließen

Stellen Sie mit ssh eine Verbindung zum Container her, basierend auf den zuvor angezeigten Informationen. Wenn Sie gefragt werden, ob Sie unterwegs eine Verbindung herstellen möchten, antworten Sie einfach mit Ja.

ssh -p <port> <ip address>

Nachdem Sie mit dem Container verbunden sind, sollten Sie in der Lage sein, alle Informationen abzurufen, die Sie zum Debuggen benötigen. Sie können Container-Dateien und -Verzeichnisse auch herunterladen, indem Sie den folgenden scp verwenden, während Sie zu local zurückkehren.

scp -r -P <port> root@<ip address>:<Der Pfad des Verzeichnisses, das Sie kopieren möchten> <Lokaler Download-Zielpfad>

Am Ende

Selbst wenn ich Docker verwende, können die Ergebnisse auf local und CircleCi unterschiedlich sein, und ich debugge gerade. Zunächst möchte ich etwas über Docker und Betriebssystem lernen, damit kein Debuggen erforderlich ist.

Recommended Posts

Greifen Sie mit ssh auf den Circle CI Docker-Container zu und debuggen Sie ihn
CI / CD Docker-Containerüberwachung
Hallo Welt mit Docker und C Sprache
Microservices mit Docker- und Cloud-Leistung
[Linux] Starten Sie den Apache-Container mit Docker
Über Docker, gefälschten Server und Container
Erstellen Sie eine Debug-Umgebung auf einem Container. Erstellen Sie mit Docker eine lokale Entwicklungsumgebung für Rails-Tutorials.
Beginnen Sie mit der Installation von Docker auf EC2 und dem Ausführen von Yellowfin in einem Container
Debuggen mit VSCode + Next.js + Docker (+ Chrome) (unterstützt sowohl Server- als auch Client-Seite)
Erstellen einer Rails 6- und PostgreSQL-Umgebung mit Docker
Kommunizieren Sie zwischen Gitlab und Gitlab Runner, die mit Docker gestartet wurden
Überwachen Sie den Docker-Container und den SystemD-Prozess auf demselben Host mit Zabbix unter Ubuntu.
So erstellen Sie einen Jenkins-Server mit einem Docker-Container unter CentOS 7 von VirtualBox und greifen von einem lokalen PC auf den Jenkins-Server zu
Erleben Sie .NET 5 mit Docker und Visual Studio Code
IDE und Maven werden mit allen Debug-Informationen kompiliert
Einstellung zum Verlassen des Docker-Containers mit VScode
Erstellen Sie mit Docker ein Jupyter-Notizbuch und führen Sie Ruby aus
Aktualisieren Sie das Container-Image mit KUSANAGI Runs on Docker
Bereiten Sie eine Scraping-Umgebung mit Docker und Java vor
Docker Container Operations mit Docker-Client API für Java
Versuchen Sie, einen anderen Servlet-Container-Steg mit Docker zu verwenden
[Docker] Wie man mit einem Container in Heroku aktualisiert und wie man mit Migrate Error umgeht