不,目前没有内置选项可检查图像是否“过时”。 自动更新容器的实际情况因使用案例而有所不同。 “盲目”更新到最新的图像并非易事。 例如, some-image:latest
可以导致_completely_不同的图像(例如ubuntu:latest
指最新的“ LTS”发行版,有时从14.04切换到16.04),同时some-image:1.2.3
“看起来”像SemVer(ish)标签,但不能保证,因为由图像作者决定“标签”方案及其含义(基本上,标签只是免费的)形式“标签”)。
因此,建议对容器使用不可变的标识符(例如ubuntu<strong i="9">@sha256</strong>:aabbbcccddd
); 这样您就可以_test_您正在运行的确切映像版本,并保证它是在质量检查流程中测试过的_same_版本。
综上所述,有一些选择。
docker compose
,您可以docker-compose pull
拉取组成堆栈中使用的所有图像的最新版本docker build --pull .....
强制拉动FROM
定义的图像,然后再开始构建docker service update --force --image foo:bar <servicename>
解析指定的foo:bar
映像的最新版本,并将服务的所有实例“固定”到该版本我希望这回答了你的问题。 请记住,GitHub问题跟踪器并非旨在作为一般支持论坛,而是用于报告错误和功能请求。 对于其他类型的问题,请考虑使用以下一种:
我将关闭此问题,因为这不是错误,但可以随时继续进行对话👍
但是,“盲目更新”与仅收到更改了远程映像的
确实。 一种稳定的机制(通过这种机制,人们无需每天都重新下载整个容器)就可以检测到容器的更新,这真是太棒了。
安全更新非常重要,缺少此功能并不能使其更容易保持最新状态。
最有用的评论
但是,“盲目更新”与仅收到更改了远程映像的