【发布时间】:2020-11-02 11:22:19
【问题描述】:
我有一些容器,它们在 docker-compose 文件中都有总是重启值,如下所示:
version: "3.7"
services:
container:
image: ghost:latest
container_name: some_container
restart: always
depends_on:
- ...
ports:
- ...
...
一旦操作系统(Flatcar Linux / CoreOS)自我更新,容器就不会重新启动。但是如果我只是做$ sudo docker ps,所有的容器都会立即启动。这是怎么回事?如何修复它,以便我的容器在更新后自动重启?
编辑:
不确定我的问题有什么不清楚的地方,restart: always 已打开。除非我在文档中遗漏了一些重要的东西,否则即使重新启动 docker 守护程序(在操作系统重新启动之后),此命令也应该重新启动容器。
从下面复制一个我的 cmets:
好的,请帮帮我。正如你在我的问题中看到的,我有 重启:始终开启。所有这些容器都已启动 成功并且运行良好。然后操作系统会自行更新 自动并重新启动。在此之后重新启动泊坞窗 守护程序重新启动。但由于某些原因,我运行的容器 开启
RESTART: ALWAYS不会启动。如果我进入我的服务器 此时,输入sudo docker ps列出我正在运行的容器, 突然所有容器都启动了,我看到了列表。所以为什么 即使守护程序正在运行,容器是否已启动?
【问题讨论】:
-
所以你想在主机重启后自动启动 docker 容器?
-
我想要重启的容器:总是在配置中重启,是的。
-
docker是如何安装的?并且你能在运行 docker ps 之前验证引擎是否正在运行(dockerd 进程)吗?
-
Flatcar-linux 是 CoreOS 的一个分支,其中 docker 已预先安装。如果服务没有运行,为什么 docker 命令会起作用?我该如何检查?
-
谢谢。应该检查一下!重新启动后它处于非活动状态,我认为它在 docker ps 工作时处于活动状态。 systemctl 是否启用了 docker,现在它按预期工作。写一个答案!
标签: docker docker-compose coreos