![Docker 镜像操作系统的重要性](https://linux22.com/image/696057/Docker%20%E9%95%9C%E5%83%8F%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E7%9A%84%E9%87%8D%E8%A6%81%E6%80%A7.png)
我们有一个基于 Docker 的开发环境,并且由于我们的暂存和生产服务器不是基于 Docker - 我们正在尝试使它们尽可能相似(Linux 发行版、LAMP 版本、配置......)。
我看到 Docker hub 的大多数官方镜像(例如 mysql)都是基于 Jessie(Debian),而我们的服务器运行的是 Centos 6/7(RedHat),因此我们从 Centos 创建了自己的定制镜像,它具有所有必需的安装,因此它与生产环境类似。
我的问题是 - 确保在 Docker 镜像和生产服务器上使用相同的 Linux 发行版对我们来说真的很重要吗?或者这是浪费时间,我们应该只使用官方镜像?
谢谢。
答案1
从 Docker 的角度来看,匹配容器内外操作系统并不重要。更重要的是,你必须考虑修补和故障排除——如果你混合使用 Debian、CentOS 和 Alpine,那么你必须考虑如何让它们都保持最新状态。
容器内的操作系统的大小也很重要。像 Alpine 这样的极简发行版通常比基本 Debian 映像小,这样可以减小容器大小并减少补丁数量。
如果您的计划是在容器内执行开发/测试,但在容器外进行生产,那么尽可能紧密地匹配它们是有意义的。