如何将安全补丁应用于现有的Docker映像?

时间:2020-06-18 04:06:44

标签: docker security patch docker-container docker-image

如果存在使用特定基本映像的docker映像作为容器运行,并且该基本映像有新的安全性升级。将那个安全补丁应用到docker镜像的最佳实践是什么。

还如何知道基本映像是否有可用的安全补丁。

1 个答案:

答案 0 :(得分:0)

假设您有一个基于名为“ Base:latest”的镜像的Dockerfile,并且已构建了一个名为“ MyImage:latest:latest”的镜像

如果“ Base:latest”已使用安全更新进行了更新,则需要重建“ MyImage:latest”。

容器是图像实例,因此,如果需要将安全更新反映到容器中,则应基于“ MyImage:latest”图像重新创建容器。

请注意,您将不想在生产中的基础映像上使用“最新”标签,因为您将无法复制相同的部署环境,因此最佳做法是使用特定的版本标签,例如“ 1.0“。如果有更新,则需要将Dockerfile从“ Base:1.0”更新为“ Base:1.1”。

因此,如果您的映像基于另一个映像,并且您想在不等待基础映像的新版本更新的情况下运行安全更新,则可以在Dockerfile中运行安全更新命令,并确保偶尔重建映像并重新创建容器。

您可以使用Watchtower之类的工具来自动执行此过程,方法是定期自动重建图像,然后重新创建容器。

另一种选择是在容器级别运行自动更新,可能使用每天运行的脚本,但是您应考虑到对按负载方式运行的进程(网络,CPU等)的影响