Présentation
Docker est un ensemble de produits de plate-forme en tant que service (PaaS) qui utilisent la virtualisation au niveau du système d'exploitation pour fournir des logiciels dans des packages appelés conteneurs.
Docker est un utilitaire qui vous permet de créer un conteneur pour exécuter des applications. Un conteneur Docker est une machine virtuelle entièrement contenue.
Ce guide vous montrera trois méthodes pour vous connecter en SSH à un conteneur Docker et exécuter des commandes.
Méthode 1 :
- Utiliser docker exec pour exécuter des commandes dans un conteneur Docker
Le docker exec La commande exécute une commande spécifiée dans un conteneur déjà en cours d'exécution.
Vous pouvez l'utiliser pour vous connecter en SSH à un conteneur Docker en créant un bash shell .
Syntaxe pour l'utilisation de docker exec
docker exec (options) (container) (The_command)
- Extraire une image Docker si vous ne l'avez pas fait. vous pouvez charger apache par exemple :
sudo docker pull httpd
- Ensuite, exécutez le conteneur avec
sudo docker run --name apache-test -d httpd
- Répertorier tous les conteneurs en cours d'exécution pour vérifier si le conteneur est répertorié ou non
sudo docker ps
- Pour y accéder et exécuter des commandes dans ce conteneur, exécutez
sudo docker exec -it apache-test /bin/bash
Le –je l'option spécifie interactif
Le –t permet une saisie de terminal interface.
Désormais, toutes les commandes que vous entrez s'exécuteront dans ce conteneur.
Méthode 2 :
- Utilisez ledocker attach Commande pour se connecter à un En cours d'exécution Conteneur
Le attachement docker La commande lie une entrée, une sortie et un flux d'erreurs locaux à un conteneur.
- Pour vous connecter à un conteneur en cours d'exécution, exécutez
sudo docker attach (The_container_Name)
Maintenant, nous allons nous connecter au apache-test conteneur avec la ligne de commande suivante.
sudo docker attach apache-test
Méthode 3 :
- Nous utiliserons SSH se connecter à un conteneur Docker
Vous pouvez vous connecter à un conteneur Docker en utilisant SSH (Secure Shell).
- Installer, démarrer et activer ssh
Sur CentOS :
dnf install -y openssh-server openssh-clients && systemctl start sshd && systemctl enable sshd
Sur Ubuntu :
sudo apt-get install ssh && sudo systemctl start sshd && sudo systemctl enable sshd
- Obtenir l'adresse IP du conteneur Docker
Obtenez l'adresse IP du conteneur à l'aide de docker inspect commande et filtrer les résultats.
Pour les moteurs Docker modernes, exécutez
sudo docker inspect -f "{{ .NetworkSettings.IPAddress }}" (The_container_name)
Pour les moteurs Docker plus anciens, exécutez
[root@unixcop ~]# docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' (The_container_name)
172.17.0.1
[root@unixcop ~]#
- SSH dans Docker Container en utilisant la commande SSH pour se connecter au conteneur
ssh [email protected]
Le système devrait demander un mot de passe à l'utilisateur root pour ce conteneur
Maintenant, vous pouvez exécuter des commandes dans le conteneur.
Conclusion
Alors, c'est tout
Dans ce didacticiel, nous vous montrons comment vous connecter en SSH à un conteneur Docker en cours d'exécution et exécuter des commandes via trois méthodes.
Merci