注意: 使用 attach 时,无法直接退出容器。使用 Ctrl + CCtrl + D 会结束容器,而不是仅仅退出。要安全退出而不停止容器,可以使用 Ctrl + P 然后 Ctrl + Q

2.3 使用 docker run

如果想以交互模式启动一个新的容器并立即进入,可以使用 docker run 命令:

docker run -it --name my_new_container ubuntu bash
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

这将基于 Ubuntu 镜像创建并启动一个新容器,然后进入 bash shell。

3. 常见选项与参数

class="table-box">
选项描述
-d后台运行容器
-it交互模式,分配终端
--rm容器停止后自动删除
-e VAR=VALUE设置环境变量

4. 退出容器

如果使用 exec 进入容器,可以通过输入 exit 或使用 Ctrl + D 来退出。如果使用 attach,则需注意 Ctrl + CCtrl + D 的区别,以免意外停止容器。

5. 进入容器的实际操作步骤

步骤 1:查看正在运行的容器

首先,确认你要进入的容器正在运行:

docker ps
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

步骤 2:进入容器

使用 docker exec 进入容器:

docker exec -it <container_id_or_name> bash
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

步骤 3:在容器中运行命令

一旦进入,你可以在容器内部运行任何命令。例如:

ls /app
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

步骤 4:退出容器

完成操作后,输入 exit 或使用 Ctrl + D 退出容器。

6. 连接到已经存在的服务

如果容器内的应用(如数据库、Web 服务)需要访问,你可以通过 docker exec 连接到这些服务。例如,连接到 MySQL 容器:

docker exec -it mysql_container mysql -u root -p
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

这将允许你在 MySQL 提示符下执行 SQL 查询。

7. 访问容器的文件系统

一旦进入容器,你可以导航其文件系统,查看和修改文件。常用命令包括:

8. 图示说明

以下是进入 Docker 容器的流程图:

class="mermaid"> style="display: inline-block; white-space: nowrap;"> style="display: inline-block; white-space: nowrap;"> style="display: inline-block; white-space: nowrap;"> style="display: inline-block; white-space: nowrap;"> style="display: inline-block; white-space: nowrap;"> CSDN @ 2136 style="display: inline-block; white-space: nowrap;"> 查看运行中的容器 style="display: inline-block; white-space: nowrap;"> 执行 docker exec -it style="display: inline-block; white-space: nowrap;"> 进入容器 style="display: inline-block; white-space: nowrap;"> 运行命令 style="display: inline-block; white-space: nowrap;"> 退出容器 style="display: inline-block; white-space: nowrap;"> CSDN @ 2136

9. 常见问题解答

  1. 如何找到容器 ID 或名称?
    使用 docker ps 列出所有正在运行的容器及其 ID 和名称。

  2. 我可以进入没有运行的容器吗?
    不可以。你必须先启动容器才能使用 exec 进入。

  3. 如何运行其他命令?
    可以替换 bash 为其他命令,例如 shpython 等。

结论

通过本文,我们详细了解了如何使用 Docker 进入容器并运行命令。掌握这些基本操作,对开发和调试 Docker 应用至关重要。希望这篇文章能为你的 Docker 使用提供帮助!

参考资料


注:本文转载自blog.csdn.net的丶2136的文章"https://blog.csdn.net/Stromboli/article/details/142670210"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接

评论记录:

未查询到任何数据!