什么是 docker-compose restart?
docker-compose restart 是一个用于重启由 Docker Compose 管理的服务容器的命令。它会先停止正在运行的容器,然后再重新启动它们,适用于配置更新后需要热重启的场景。
基本语法
docker-compose restart [OPTIONS] [SERVICE...]
如果不指定具体服务,则默认重启所有在 docker-compose.yml 中定义的服务。
常用选项
-t, --timeout TIMEOUT:指定容器停止前等待的秒数(默认为 10 秒)。
示例:
docker-compose restart -t 30 web db
该命令将重启名为 web 和 db 的服务,并给予 30 秒的停止超时时间。
使用场景
- 修改了环境变量或配置文件后,无需重建镜像即可应用变更。
- 服务出现临时异常,需要快速恢复。
- 配合 CI/CD 流程实现滚动更新中的部分重启。
注意事项
使用 restart 不会重新构建镜像或拉取新镜像。如果需要更新镜像内容,请结合 docker-compose pull 或 docker-compose up --build 使用。