如果存在docker镜像,则使用特定的基础镜像作为容器运行,并对基础镜像进行新的安全升级。将该安全补丁应用于docker映像的最佳实践是什么。
另外,如何知道是否有可用于基础映像的安全补丁。
发布于 2020-06-18 14:36:05
假设您有一个基于名为"Base:latest“的镜像的Dockerfile,并且您构建了一个名为"MyImage:latest:latest”的镜像。
如果"Base:latest“已使用安全更新进行了更新,则需要重新构建"MyImage:latest”。
容器是镜像实例,因此如果您需要在容器中反映安全更新,则应根据MyImage:latest镜像重新创建容器。
请注意,您不希望对生产环境中的基础映像使用“最新”标记,因为您将无法重现相同的已部署环境,因此最佳实践是使用特定的版本标记,如"1.0“。如果有可用的更新,您需要将Dockerfile从"Base:1.0“更新为"Base:1.1”。
因此,如果您的镜像基于另一个镜像,并且您希望在不等待基础镜像的新版本和更新版本的情况下运行安全更新,您可以在Dockerfile中运行安全更新命令,并确保偶尔重建镜像并重新创建容器。
您可能可以使用Watchtower等工具自动执行此过程,方法是定期自动重新构建映像,然后重新创建容器。
另一种选择是在容器级别运行自动更新,可能是使用每天运行的脚本,但您应该考虑对正在运行的进程负载的影响(网络、cpu等)。
https://stackoverflow.com/questions/62442199
复制相似问题