GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Docker

Wie man SSH in einen Docker-Container einfügt und Befehle ausführt

Einführung

Docker ist eine Reihe von PaaS-Produkten (Platform as a Service), die eine Virtualisierung auf Betriebssystemebene verwenden, um Software in Paketen bereitzustellen, die als Container bezeichnet werden.

Docker ist ein Dienstprogramm, mit dem Sie einen Container erstellen können für laufende Anwendungen. Ein Docker-Container ist eine vollständig abgeschlossene virtuelle Maschine.

Dieser Leitfaden zeigt Ihnen drei Methoden für SSH in einen Docker-Container und zum Ausführen von Befehlen.

Methode 1 :

  • Verwenden Sie docker exec um Befehle in einem Docker-Container auszuführen

Die Docker-Exec Befehl führt einen angegebenen Befehl in einem bereits ausgeführten Container aus.

Sie können damit eine SSH-Verbindung zu einem Docker-Container herstellen, indem Sie eine Bash-Shell erstellen .

Syntax für die Verwendung von docker exec

docker exec (options) (container) (The_command)
  • Ziehen Sie ein Docker-Image wenn nicht. Sie können Apache laden zum Beispiel:
sudo docker pull httpd
  • Führen Sie dann den Container mit
  • aus
sudo docker run --name apache-test -d httpd
  • Listen Sie alle laufenden Container auf, um zu prüfen, ob der Container aufgelistet ist oder nicht
sudo docker ps
  • Um darauf zuzugreifen und Befehle in diesem Container auszuführen, führen Sie
  • aus
sudo docker exec -it apache-test /bin/bash

Das –i Option gibt interaktiv an

Das –t ermöglicht eine Terminal-Eingabe Schnittstelle.

Jetzt werden alle Befehle, die Sie eingeben, in diesem Container ausgeführt.

Methode 2:

  • Verwenden Sie dasDocker-Anhängen Befehl zum Verbinden mit einem Laufenden Behälter

Das Docker-Anhängen Der Befehl verknüpft einen lokalen Eingabe-, Ausgabe- und Fehlerstrom mit einem Container.

  • Um eine Verbindung zu einem laufenden Container herzustellen, führen Sie aus
sudo docker attach (The_container_Name)

Jetzt stellen wir eine Verbindung zum Apache-Test her Container mit der folgenden Befehlszeile.

sudo docker attach apache-test

Methode 3:

  • Wir werden SSH verwenden um sich mit einem Docker-Container zu verbinden

Sie können sich mit SSH (Secure Shell) mit einem Docker-Container verbinden.

  • ssh installieren, starten und aktivieren

Auf CentOS :

dnf install -y openssh-server openssh-clients && systemctl start sshd && systemctl enable sshd 

Auf Ubuntu :

sudo apt-get install ssh && sudo systemctl start sshd && sudo systemctl enable sshd 
  • IP-Adresse des Docker-Containers abrufen

Rufen Sie die IP-Adresse des Containers mithilfe von docker inspect ab Befehl und Herausfiltern der Ergebnisse.

Führen Sie für moderne Docker-Engines aus

sudo docker inspect -f "{{ .NetworkSettings.IPAddress }}" (The_container_name)

Führen Sie für ältere Docker-Engines aus

[root@unixcop ~]# docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' (The_container_name)
172.17.0.1
[root@unixcop ~]# 
  • SSH in den Docker-Container, indem Sie den SSH-Befehl verwenden, um eine Verbindung zum Container herzustellen
ssh [email protected]

Das System sollte nach einem Passwort des Root-Benutzers für diesen Container fragen

Jetzt können Sie Befehle im Container ausführen.

Schlussfolgerung

Das war's also

In diesem Tutorial zeigen wir Ihnen, wie Sie mit SSH in einen laufenden Docker-Container einsteigen und Befehle über drei Methoden ausführen.

Danke


Docker
  1. So installieren und konfigurieren Sie Docker Container unter Rocky Linux 8

  2. Wie führe ich ein Programm in einem Docker-Container aus?

  3. So führen Sie MySQL in einem Docker-Container aus

  4. Anwendungen in Docker-Containern installieren, ausführen und löschen – Teil 2

  5. So installieren Sie Docker und führen Docker-Container in Ubuntu aus

So führen Sie PHPMyAdmin in einem Docker-Container aus

So führen Sie Grafana in einem Docker-Container aus

So stellen Sie einen Docker-MongoDB-Container bereit und verwalten ihn

So führen Sie SSH in Docker-Container ein [Schritt für Schritt]

So führen Sie Docker-Container aus

So führen Sie SSH in einen Docker-Container ein