【Docker基础】Docker容器管理:docker restart详解
目录
1 docker restart命令概述
1.1 命令作用
1.2 与相关命令对比
2 命令语法详解
2.1 基础语法
2.2 核心参数说明
3 核心原理深度解析
3.1 信号传递机制
3.2 状态转换
4 典型应用场景
4.1 服务配置更新
4.2 故障恢复流程
5 进阶使用技巧
5.1 组合命令应用
5.2 异常处理方案
6 总结
1 docker restart命令概述
1.1 命令作用
docker restart 用于安全重启正在运行的Docker容器,其核心特性:
- 优雅终止进程(发送SIGTERM)
- 支持设置等待时间
- 自动清理异常状态容器

1.2 与相关命令对比
命令 | 适用状态 | 状态变更 | 数据持久化 |
restart | Running | Restarting→Running | 保留 |
start | Exited | Running | 保留 |
stop | Running | Exited | 保留 |
kill | Running | Exited | 保留 |
2 命令语法详解
2.1 基础语法
docker restart [OPTIONS] CONTAINER [CONTAINER...]
2.2 核心参数说明
参数 | 全称 | 默认值 | 说明 |
-t | --time | 10 | 优雅终止等待时间(秒) |
--no-block | - | false | 非阻塞模式(v1.2.0+) |
--restart | - | no | 容器重启策略(no/on-failure/always/unless-stopped) |

3 核心原理深度解析
3.1 信号传递机制

3.2 状态转换

4 典型应用场景
4.1 服务配置更新
# 重启Nginx容器并等待30秒
docker restart -t 30 my_nginx
4.2 故障恢复流程

5 进阶使用技巧
5.1 组合命令应用
# 强制重启并立即返回
docker restart --no-block -t 0 $(docker ps -q)
5.2 异常处理方案

6 总结
掌握docker restart命令对于维护容器化服务的持续可用性具有重要意义,建议结合docker events命令进行实时监控。
# 实时监控容器事件
docker events --filter 'event=restart'