由于一些内部问题,我们需要在未使用的图像变得未使用后立即将其删除。
我知道可以使用 Garbage collection但它没有提供我们需要的严格政策。
我遇到过this解决方案但是
- 已弃用
- 它还会删除容器和可能安装的卷
我正在考虑直接在节点上设置一个 cron
作业来运行 docker prune
但我希望有更好的方法
不知道这是否有影响,但我们正在使用 AKS
最佳答案
这并没有真正完成很多事情,因为如果再次请求它们将重新下载。但是,如果您坚持做一件愚蠢的事情,最好的选择是一个 DaemonSet,它与主机 docker 控制套接字 hostPath 一起运行并运行 docker system prune
如您所提到的。您不能使用 cron 作业,因此您需要自己编写循环,可能只是 bash -c 'while true; docker system prune && sleep 3600;完成”
或其他内容。
关于docker - Kubernetes:如何自动清理未使用的镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58596782/