docker-compose 正在主机重启后启动容器。哪个?

docker-compose is starting containers after host reboot. Which ones?

我是 docker-compose 的新手。之前,当我手动启动容器时,在主机重启后我必须手动启动容器。

今天我发现 - 在主机重新启动后 - 我有 4 个容器 运行。这些以前以 docker-compose.

开头

但是 docker-compose 不能很好地工作,除非你在正确的目录中 docker-compose.yml

问题

我如何知道 docker-compose.yml 或(哪个路径)用于启动 docker 容器,我发现这些容器在我重新启动后一登录就已经启动了?

我试过了

docker inspect xxxxx

但我找不到任何关于 docker-compose.yml 用于启动的线索。

docker-compose 没有开始任何事情。

Docker 守护进程正在启动您设置了重启策略的容器(可能在您的 docker-compose.yaml 文件之一中)。如果您不再需要这些容器 (docker container rm ...),您可以简单地删除它们,或者您可以使用 docker container update --restart=no <image_name_or_id>.

重置重启策略

您可以阅读有关重启策略的更多信息here

But docker-compose does not work well unless you are in the proper directory with the docker-compose.yml.

由于 docker-compose 在此阶段不涉及(它可能负责 创建 容器,但不负责重新启动它们),这不是问题。通过 docker-compose.yml 在容器上设置适当的重启策略是使容器在启动时启动的正确方法。


您可以在使用 docker run 启动容器时设置重启策略,方法是在命令行中包含适当的 --restart=<policy> 选项。