首页/云/Docker 容器速查/容器秒退:主进程结束
本包目录(366 条)
基础命令50 条镜像与构建107 条网络与存储52 条Compose 编排55 条资源与安全50 条
容器排障52 条

容器秒退:主进程结束

容器生命周期跟随主进程:起 bash 不带 -dit、脚本执行完没有前台进程、应用启动即失败,都会立即退出。

Docker 容器速查云更新于 2026-10-12
机制PID 1 退出容器即停
验证docker ps -a 状态 Exited (0)
修复常驻前台进程 / -dit / 改用正确启动命令

示例

示例
docker run -d alpine echo hello
docker run -dit --name shell alpine sh
docker logs shell 2>/dev/null; docker ps -a --filter name=shell
后台型服务(nginx、数据库)本身前台运行没问题;自己写脚本要避免 fork 到后台再退出。

易错点

  • exit 0 的秒退常被当故障:其实是任务正常结束,区别在于该场景是否需要常驻
  • 脚本里 nohup & 后主脚本结束,容器跟着停,是自写 entrypoint 的常见错误

数据来源与参考

  • Docker 官方文档:Container lifecycle 与 docker run(docs.docker.com)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌