在服务器意外断电或者重启的情况下,docker服务是关闭的一个状态,每次断电或者重启都要使用命令手动重启服务,
但是每次都要手动命令重启,比较麻烦,因此根据要求设置docker服务自动重启。
1、设置docker容器进行开机自动重启
我们可以使用以下命令进行设置docker容器自动重启
#docker服务设置开机自启动命令 systemctl enable docker.service #关闭docker服务开机自启动(一般只使用开机自启动命令,这个命令了解就行) systemctl disable docker.service |
2、docker设置容器服务自动重启
在我们进行使用jenkins部署服务时使用了docker.sh脚本可以进行在docker.sh脚本添加容器自动启动命令。
docker.sh脚本路径:
home/app/${项目名称文件夹}/system/目录下
#此命令添加到docker 运行脚本 --restart=always |
这个命令是在容器没有运行的情况下进行添加到脚本里面的,这里以经开区智慧环卫项目做示范
(这里只演示命令添加位置,红色部位为添加内容,其他颜色为脚本原来命令,不建议脚本命令直接拿来使用)
#!/bin/bashtag=system ##停止这个服务 #删除这个容器 #删除镜像 #指定文件创建镜像 #文件名称后面. 是为了让 Docker 到当前本地目录去寻找 Dockerfile 文件 #最后利用DockerFile中的其他命令来构建一个镜像 #使用--privileged=true该参数 #container内的root拥有真正的root权限 #否则,container内的root只是外部的一个普通用户权限 #”--restart=always” 该命令是在启动容器时自动启动服务,本次需要把他添加到privileged=true后面即可 |
这个命令脚本只是为了后面再次使用能够自动重启,本次不进行生效,
因此这个命令更新完成后需要手动命令重启一下docker服务。
手动重启docker命令如下:
docker restart 容器名称 #重新启动容器 |
3、docker容器服务正在运行中如何进行添加?
服务器启动,并且docker也已经启动,服务使用手动命令已经启动了,这样我们只需要使用命令就可以完成服务开机自启动功能了,命令如下:
docker update --restart=always ${容器名称} #docker 更新 这个自动重启命令到 某个容器里面 |