我使用docker-compose
启动一组不相关的Docker容器。我之所以使用docker-compose
,是因为通过docker-compose.yaml
进行配置很容易,并且该文件带来了集中式配置。
我遇到的一个问题是图像更新,或者实际上是图像更新后的容器更新。 我通过docker-compose pull
更新了它们,但是先前生成的容器不会自行重启。我有两种可能的解决方案,都可行,但都不理想:
pull
之后重新启动所有容器。这将导致不可用,这在我的家庭环境中不是至关重要的事情,但仍然(尤其是在重置灯光后,重新启动Home Assistant会很痛苦)我想知道是否有更好的姿态。
这是一个家庭环境,因此我想避免使用诸如Kubernetes之类的重型解决方案。
Swarm模式可以工作,但我只是读过它,它看起来更像是一种确保状态的解决方案,而不是容器管理器(从某种意义上说,它将根据产生它们的图像的新鲜度重新启动容器)。
最佳答案
在docker pull image
之后,docker-compose -f "docker-compose.yml" up -d
将仅重新启动docker pull
之后具有新版本镜像的容器。它不会影响图像保持不变的容器。此设置对我来说效果很好。
关于docker - 如何重新启动哪个镜像已更改的容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56185907/