使用 docker run 的 --restart 参数

3 min read

这个参数有几个选项:

no: 默认值,不自动重启
on-failure: 当容器非正常退出时(退出状态码非0),才会自动重启
unless-stopped: 无论退出状态如何,都会自动重启,除非手动停止
always: 无论容器的退出状态如何,都会自动重启

使用示例:

docker run --restart=on-failure:5 my_image

这个命令会启动一个容器,并在容器出现问题时尝试最多 5 次重启该容器。如果容器在此之后仍然无法正常运行,则不再尝试重启。

另外,--restart 参数也可以在 docker-compose.yaml 文件中使用,例如:

services:
my_service:
image: my_image
restart: on-failure:5