使用 RPM 升级的未来视图构建 Docker 映像

使用 RPM 升级的未来视图构建 Docker 映像

我的目标是为我的应用程序构建一个 docker 镜像,应用程序的核心部分在镜像构建期间通过 RPM 安装。

假设我已经使用“application-version-1.rpm”文件构建了我的 docker 镜像,并且一个容器正在使用此镜像运行。一两个月前,开发人员发布了一个带有补丁“application-version-2.rpm”的新 rpm,我需要在正在运行的容器内安装/升级此 rpm 文件。由于此容器正在生产中运行,我如何使用现有数据和新发布的 rpm 文件更新我的镜像。对此有什么想法吗?

注意:我需要停止应用程序服务才能安装/升级新的 rpm 文件。我的 docker 镜像中的入口点是应用程序服务。因此,如果我停止应用程序服务,它将停止容器。

答案1

你想要实现的目标肯定不属于docker哲学。

正如 @HBruijn 所解释的,您必须构建一个嵌入新 rpm 版本的新图像,然后销毁正在运行的容器,并使用新图像重新实例化新容器。

相关内容