有时Docker服务出现异常,或者服务器出现异常,需要重启Docker服务或者服务器;
如果希望有一部分基础的或者常用的容器,在服务或者服务器重启的时候,可以实现自动启动,仅需使用命令进行简单配置即可实现。

Docker 容器设置为自动重启,分为两种情况:新建容器时设置,和对已经存在的容器设置。

1、使用镜像创建新的容器运行

创建容器的时候设置容器为自动重启,命令行中加参数 –restart=always,命令如下:

docker run -d --restart=always --name 设置容器名 使用的镜像
1)以创建 InfluxDB(高性能的时序数据库) 容器为例

命令如下:

docker run -d -p 8086:8086 --restart=always --name influxdb  influxdb:latest
2)以创建 PostgreSQL(关系型数据库) 容器为例

命令如下:

docker run -d -p 5432:5432 -e POSTGRES_PASSWORD=password --name postgres postgres:latest

2、已有的容器更新为自动重启

docker update --restart=always 容器ID(或者容器名)
1)已更新已有的 nginx 容器为例

命令如下:

docker update --restart=always nginx
2)已更新已有的 tomcat 容器为例

命令如下:

docker update --restart=always tomcat

PS:

关于 –restart 策略参数 说明如下:

--restart 策略

命令 作用备注
no 默认策略,在容器退出时不重启容器
on-failure 在容器非正常退出时(退出状态非0),才会重启容器
on-failure:3 在容器非正常退出时重启容器,最多重启3次
always 在容器退出时总是重启容器
unless-stopped 在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐