首页/云/云与容器速查/docker exec 进入容器执行命令
本包目录(340 条)
云基础概念44 条计算与存储56 条网络与安全组33 条
容器与 Docker106 条
Kubernetes68 条容器排障33 条

docker exec 进入容器执行命令

在运行中的容器内执行命令(最常用是 -it 开 shell 排查问题);exec 不改容器状态,退出不会停容器,与 attach 有本质区别。

云与容器速查云更新于 2026-10-12
语法docker exec [选项] 容器 命令
高频组合-it 交互终端;-u root 以 root 进入;-w 指定目录
注意容器必须在运行;镜像可能只有 sh 没有 bash
脚本非交互一次性执行:docker exec myapp ls /app

常用示例

常用示例
docker exec -it myapp sh
docker exec -it -u root myapp bash
docker exec myapp env | grep -i path
docker exec -w /app myapp ls -al
exec 开的新进程与 PID 1 环境可能有差异(环境变量继承自容器配置,但 shell 配置不同),排查时以 PID 1 视角为主。

易错点

  • 镜像没有 bash 只有 sh,exec bash 直接报 not found
  • attach 进 PID 1 后 Ctrl-C 把主进程杀了(应尽量用 exec)

数据来源与参考

  • Docker Docs:docker exec

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌