📅  最后修改于: 2023-12-03 15:00:29.844000             🧑  作者: Mango
Docker 是一个流行的开源平台,可用于构建、打包和运行应用程序以及其依赖项,在隔离的容器中。配置容器时,我们通常需要与正在运行的容器进行交互。使用 Shell/Bash 能够实现连接到容器并在运行中的容器中执行命令。在本文中,我们将探讨如何与正在运行的 Docker 容器进行交互。
要连接到正在运行的 Docker 容器,我们需要使用 Docker CLI(Command Line Interface),通过 docker exec
命令连接到其 Shell。
首先,我们需要找到正在运行的 Docker 容器的名称或 ID。我们可以使用以下命令列出正在运行的容器:
docker ps
这将打印出所有正在运行的容器的列表。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e5b7d9adb4ca nginx:latest "/docker-entrypoint.…" 4 days ago Up 3 hours 80/tcp web-server
9c712cd67e2c mysql:latest "docker-entrypoint.s…" 5 days ago Up 2 hours 3306/tcp mysql-server
我们可以使用 Docker CLI 执行 exec
命令连接到正在运行的容器的 Shell。在实际操作中,您需要将 CONTAINER_NAME_OR_ID
替换为您要连接的容器名称或 ID,如下所示:
docker exec -it CONTAINER_NAME_OR_ID /bin/bash
上述命令中的 -it
表示使用交互式 TTY 模式连接到容器,/bin/bash
表示连接到容器的 Bash Shell。连接到容器后,我们可以在该容器中执行命令。
例如,在我们的示例中,我们要连接到 web-server
容器:
docker exec -it web-server /bin/bash
连接到容器中后,我们可以执行任何命令。例如,我们可以列出容器中的文件:
ls -l
我们可以在容器中运行任何命令,就像在本地环境中一样。当我们完成操作后,我们可以通过键入 exit
命令来退出容器。
exit
在本教程中,我们学习了如何使用 Docker CLI 连接到正在运行的 Docker 容器。我们覆盖了查找正在运行的容器、连接到容器以及在容器中执行命令的基础知识。我希望这篇文章对您有所帮助并提供了您需要的所有信息。