容器的生命周期(start/stop/restart)
Docker 容器的生命周期管理是日常运维和开发的重要环节。掌握生命周期命令,可以灵活控制容器的启动、停止和重启。
1. 启动容器(docker start)
启动已停止的容器:
docker start mycontainer
`
- 可加
-a参数附加终端:
docker start -a mycontainer
- 可加
-i进入交互模式:
docker start -ai mycontainer
2. 停止容器(docker stop)
优雅停止运行中的容器:
docker stop mycontainer
- 默认等待 10 秒让容器进程结束,可自定义等待时间:
docker stop -t 20 mycontainer
- 发送 SIGTERM 信号,超时后发送 SIGKILL 强制停止
3. 重启容器(docker restart)
快速停止并启动容器:
docker restart mycontainer
- 可指定超时:
docker restart -t 15 mycontainer
- 相当于执行
stop然后start
4. 生命周期状态查看
- 查看容器状态:
docker ps -a
-
状态字段示例:
Up X minutes:运行中Exited (0) Y minutes ago:已停止
5. 自动重启策略
- 通过
--restart参数设置自动重启:
docker run -d --restart unless-stopped myapp:1.0
-
可选策略:
no:不自动重启(默认)always:无论退出状态如何都重启unless-stopped:除非手动停止,否则自动重启on-failure[:max-retries]:失败时重启,最多重试次数可选
通过掌握容器生命周期命令与自动重启策略,可以更灵活、安全地管理容器运行状态,提高生产环境的稳定性和可维护性。