創建容器時沒有添加參數 --restart=always ,導致的後果是:當 Docker 重啓時,容器未能自動啓動。
現在要添加該參數怎麼辦呢,方法有二:
1、Docker 命令修改
docker container update --restart=always 容器名字
實例操作如下:
[root@rabbitmq ~]# docker container update --restart=always rabbitmq
rabbitmq
[root@rabbitmq ~]# systemctl restart docker
[root@rabbitmq ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
043b63bbda84 redis:5.0.5 "docker-entrypoint.s…" 46 hours ago Up 7 seconds 0.0.0.0:7005->7005/tcp, 6379/tcp, 0.0.0.0:17005->17005/tcp redis-7005
670ddcd33d91 redis:5.0.5 "docker-entrypoint.s…" 46 hours ago Up 7 seconds 0.0.0.0:7004->7004/tcp, 6379/tcp, 0.0.0.0:17004->17004/tcp redis-7004
b3785e9796c6 redis:5.0.5 "docker-entrypoint.s…" 46 hours ago Up 7 seconds 0.0.0.0:7003->7003/tcp, 6379/tcp, 0.0.0.0:17003->17003/tcp redis-7003
42f19c26df01 redis:5.0.5 "docker-entrypoint.s…" 46 hours ago Up 8 seconds 0.0.0.0:7002->7002/tcp, 6379/tcp, 0.0.0.0:17002->17002/tcp redis-7002
d7f31eec4052 redis:5.0.5 "docker-entrypoint.s…" 46 hours ago Up 8 seconds 0.0.0.0:7001->7001/tcp, 6379/tcp, 0.0.0.0:17001->17001/tcp redis-7001
874b9667b48c redis:5.0.5 "docker-entrypoint.s…" 46 hours ago Up 8 seconds 0.0.0.0:7000->7000/tcp, 6379/tcp, 0.0.0.0:17000->17000/tcp redis-7000
b045b37d244d rabbitmq:management "docker-entrypoint.s…" 2 days ago Up 8 seconds 4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, 15671/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp rabbitmq
[root@rabbitmq ~]#
2、直接改配置文件
(經測試後無效,修改配置文件後,啓動容器後,該參數有自動變成了no,修改不生效)
首先停止容器,不然無法修改配置文件
配置文件路徑爲:/var/lib/docker/containers/容器ID
在該目錄下找到一個文件 hostconfig.json ,找到該文件中關鍵字 RestartPolicy
修改前配置:"RestartPolicy":{"Name":"no","MaximumRetryCount":0}
修改後配置:"RestartPolicy":{"Name":"always","MaximumRetryCount":0}
最後啓動容器。
————————————————
版權聲明:本文爲CSDN博主「carcoon」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/carcoon/article/details/105253898