Artikel & Guides

5
(2)

SSH Verbindung in DOCKER Container

letzte Änderung: 28. Februar 2023


Affiliate - Links

Auf meiner Seite verwende ich sogenannte Affiliate-Links, diese sind mit einem gekennzeichnet, damit du diese auch direkt erkennen kannst.

Sobald du über so einen Link das Produkt kaufen würdest, erhalte ich möglicherweise eine Provision vom jeweiligen Anbieter.
Außerdem entstehen für Dich natürlich keine zusätzlichen Kosten!
Mich unterstützt du damit aber enorm und trägst dazu bei, dass es auch in Zukunft weitere Guides und Vorstellungen von mir hier geben wird.

Ich empfehle nur Tools / PlugIns / Anbieter / Produkte, hinter denen ich auch wirklich stehe, bzw. ich auch einen Mehrwert sehe.

DarkWolfCave.de ist Teilnehmer des Amazon-Partnerprogramm, das zur Bereitstellung eines Mediums für Webseiten konzipiert wurde, mittels dessen durch die Platzierung von Partner-Links zu Amazon.de Entgelte verdient werden können.


c1b0f67594c54be99a9c946f15402a5f

Manchmal benötigt man zum testen, oder um schnelle (nicht persistente) Änderungen vorzunehmen, eine SSH Verbindung in Docker Container. Wie du dich schnell auf eine solche Instanz mit SSH verbinden kannst, zeige ich dir in diesem Artikel.

ACHTUNG! Bitte lesen!
Du benutzt das hier Gezeigte natürlich, wie immer, auf eigenes Risiko!
Ich habe alles selbst durchgeführt und mir mein System nicht zerschossen oder sonst irgendwelche negativen Auffälligkeiten bemerkt.
Aber dennoch… Backups sind immer gut….
Ich übernehme keine Haftung für irgendwelche Schäden am System, der Hardware oder der Katze….

Voraussetzungen für eine SSH Verbindung in DOCKER Container

Damit du diese Schritte hier direkt ausprobieren kannst, benötigst du ein paar Voraussetzungen:

SSH Verbindung in Docker Container über Portainer

Solltest du Portainer zum verwalten deiner Docker Container benutzen, kannst du sehr einfach von dort aus ein Terminal starten.
Dafür loggst du dich über die Web-GUI ein ( IP-DEINER-INSTALLATION:9443) und wählst „Container“.
Auf der rechten Seite dann bei dem gewünschten Container auf das Symbol für „Exec Console“ klicken:

SSH Verbindung in DOCKER Container - portainer

Im nächsten Fenster musst du in der Regel nichts ändern und kannst direkt auf „Connect“ klicken:

SSH Verbindung in DOCKER Container - Console

Und schon öffnet sich ein Terminal Fenster für deine Docker Instanz, in der du jetzt Befehle absetzen kannst (hier z.B: influxd version).
Trennen kannst du die Verbindung wieder, indem du auf „Disconnect“ klickst:

SSH Verbindung in DOCKER Container - Terminal

SSH Verbindung in Docker Container über Terminal

Natürlich kannst du auch auf den altbekannten Weg eine SSH Verbindung in einen Docker Container herstellen.
Dazu benutzt du einfach eine Terminal / Putty / MobaXterm Sitzung und verbindest dich mit der Maschine auf der Docker läuft.

Jetzt kannst du dir erst einmal alle deine Container anzeigen lassen:

docker ps

Ich selbst benutzte meistens eine „manipulierte“ Ausgabe. Einfach um nur die Infos zu erhalten die ich auch sehen will. Falls du mehr dazu lesen magst findest du hier viele Infos zu docker:

docker ps --format "{{.ID}} : {{.Names}} : {{.Image}} : {{.State}}"
SSH Verbindung in DOCKER Container - docker ps

Bei dir wird es sicherlich etwas anders aussehen. Aber du siehst jedenfalls alle installierten Docker Container. Suche dir jetzt den richtigen aus um dich per SSH Verbindung in deinen Docker Container einzuwählen.

Dazu nutzen wir jetzt docker exec -it <container name oder ID> /bin/bash
Wie erwähnt kannst du entweder die ID oder den Namen nutzen:

docker exec -it testdb /bin/bash
SSH Verbindung in DOCKER Container - docker exec

Nach dem Befehl ändert sich der Promt auf root@CONTAINER_ID und du befindest dich jetzt auf einer shell Umgebung in deinem Container. Mit „exit“ kommst du wieder heraus.

Falls du aber eh nur einen Befehl absetzen, oder ein Sript (welches auf der Docker Umgebung bereits vorhanden ist) starten, kannst du dies auch direkt in einem Schritt erledigen.
Im folgenden Beispiel setze ich einen Befehl auf einem influxdb Docker Container ab um mir die Version anzeigen zu lassen:

docker exec -it 77afff2b3aa1 influxd version

Was aber in jedem Container gehen sollte, allerdings Null Nutzen hat: 😛

docker exec -it 77afff2b3aa1 echo "Hello Docker Container - I hate Hello Worlds…. :-P"
SSH Verbindung in DOCKER Container - Docker Hello....

Angenommen du hast im root-Verzeichnis ein Script mit dem Namen test.sh erstellt. Dann könntest du dieses auch direkt starten:

docker exec -it 77afff2b3aa1 ./test.sh
image 85

Hier der Inhalt der test.sh (macht wirklich nichts…):

#!/bin/bash
date=$(date --date "$1" +%F)
echo $date
uname -r
cat /etc/*release
echo "Hello Docker Container!"

Newsletter & Updates

Trage dich in den Newsletter ein und erhalte sporadisch Neuigkeiten zu DarkWolfCave und neuen Themen.
Versprochen: Es werden keine Daten verkauft und ich werde dein Postfach nicht ständig zuspammen…

Verpasse keine neuen Themen und Videos mehr

Trage dich in den Newsletter ein und erhalte sporadisch Neuigkeiten zu DarkWolfCave und neuen Themen.
Versprochen: Es werden keine Daten verkauft und ich werde dein Postfach nicht ständig zuspammen…

Gefällt dir der Beitrag?
Hinterlasse gerne ein paar Sterne!

Wie hilfreich war dieser Beitrag für Dich?

Klicke auf die Sterne um zu bewerten!

Durchschnittliche Bewertung 5 / 5. Anzahl Bewertungen: 2

Bisher keine Bewertungen! Sei der Erste, der diesen Beitrag bewertet.

Es tut uns leid, dass der Beitrag für dich nicht hilfreich war!

Lasse uns diesen Beitrag verbessern!

Wie können wir diesen Beitrag verbessern?

Abonnieren
Benachrichtige mich bei
guest
0 Kommentare
Inline Feedbacks
Alle Kommentare anzeigen