Maison  >  Article  >  Opération et maintenance  >  Comment accéder au docker précédent

Comment accéder au docker précédent

PHPz
PHPzoriginal
2023-04-10 14:17:26981parcourir

Avec la popularité et l'utilisation généralisée de Docker, de nombreux développeurs utiliseront cette technologie de conteneurisation pour le déploiement et la maintenance d'applications. Mais certaines personnes ont peut-être eu des difficultés à accéder aux conteneurs Docker précédents. Alors comment accéder au Docker précédent ?

Dans cet article, nous vous présenterons comment saisir le conteneur Docker précédent. Nous présenterons respectivement deux méthodes : en utilisant la commande Docker attach et en utilisant l'outil nsenter.

Partie 1 : Utilisation de la commande Docker attach

La commande Docker attach est un moyen d'entrer dans le conteneur à l'aide de l'outil de ligne de commande Docker. Il permet d'exécuter des commandes en mode interactif à l'intérieur du conteneur, tout comme dans la console. Voici les étapes à suivre pour utiliser la commande Docker attach pour entrer dans le conteneur :

Étape 1 : Connaître l'ID ou le nom du conteneur

Avant d'utiliser la commande Docker attach, nous devons connaître l'ID ou le nom du conteneur Docker pour entrer . Vous pouvez utiliser la commande suivante pour obtenir l'ID ou le nom du conteneur :

docker ps -a

Cette commande affichera une liste de tous les conteneurs Docker, y compris leur nom, leur ID, leur statut et d'autres informations. Recherchez le conteneur que vous souhaitez saisir et copiez son ID ou son nom.

Étape 2 : Exécutez la commande Docker attach

Utilisez la commande suivante pour saisir un conteneur Docker en cours d'exécution :

docker attach container-id

Ici, container-id est l'ID ou le nom du conteneur obtenu à l'étape précédente. Après avoir exécuté cette commande, vous serez à l’intérieur du conteneur et pourrez y exécuter des commandes interactives. container-id是上一步中获取到的容器ID或者名称。运行此命令后,您将进入该容器,并可以在其中运行交互式命令。

请注意,Docker attach命令可能不适用于所有类型的容器。如果容器是在后台运行的,您将无法使用该命令进入它。

Part 2: 使用nsenter工具

如果您想在之前退出的Docker容器中运行命令,则可以使用nsenter工具。nsenter是Linux系统的一个工具,可以让您进入隔离的命名空间。下面是使用nsenter工具进入容器的步骤:

Step 1: 安装nsenter工具

在使用nsenter工具之前,我们需要先安装它。您可以使用以下 curl 命令来安装nsenter工具:

curl -o /tmp/nsenter https://raw.githubusercontent.com/jpetazzo/nsenter/master/nsenter && chmod +x /tmp/nsenter

这个命令将从GitHub上下载nsenter脚本,并将其保存到/tmp/nsenter文件中,并将其添加到系统环境变量中。

Step 2: 运行nsenter命令

使用以下命令可以进入之前退出的Docker容器:

docker inspect --format '{{.State.Pid}}' container-id > /tmp/container-pid
sudo /tmp/nsenter --target $(cat /tmp/container-pid) --mount --uts --ipc --net --pid

在这里,container-id

Veuillez noter que la commande Docker attach peut ne pas fonctionner avec tous les types de conteneurs. Si le conteneur s'exécute en arrière-plan, vous ne pourrez pas y accéder à l'aide de cette commande.

Partie 2 : Utiliser l'outil nsenter

Si vous souhaitez exécuter des commandes dans un conteneur Docker que vous avez quitté auparavant, vous pouvez utiliser l'outil nsenter. nsenter est un outil pour les systèmes Linux qui vous permet de saisir un espace de noms isolé. Voici les étapes à suivre pour utiliser l'outil nsenter pour entrer dans le conteneur :

Étape 1 : Installez l'outil nsenter 🎜🎜Avant d'utiliser l'outil nsenter, nous devons d'abord l'installer. Vous pouvez utiliser la commande curl suivante pour installer l'outil nsenter : 🎜rrreee🎜 Cette commande téléchargera le script nsenter depuis GitHub, l'enregistrera dans le fichier /tmp/nsenter et l'ajoutera aux variables d'environnement système. 🎜🎜Étape 2 : Exécutez la commande nsenter🎜🎜Utilisez la commande suivante pour saisir le conteneur Docker précédemment quitté : 🎜rrreee🎜Ici, container-id est l'ID ou le nom du conteneur que vous souhaitez saisir . Après avoir exécuté cette commande, vous serez à l’intérieur du conteneur et pourrez y exécuter des commandes. 🎜🎜Veuillez noter que l'outil nsenter doit être exécuté avec les privilèges root du superutilisateur. 🎜🎜Résumé🎜🎜Dans cet article, nous avons présenté deux méthodes différentes pour accéder au conteneur Docker précédent. Vous pouvez choisir d'utiliser la commande Docker attach pour entrer directement dans un conteneur en cours d'exécution, ou d'utiliser l'outil nsenter pour entrer dans un conteneur arrêté. Quelle que soit la méthode que vous choisissez, l’utilisation des conteneurs Docker deviendra plus facile, et le déploiement et la maintenance des applications seront plus pratiques. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn