Ley*_*nos 10 redhat yum docker rhel7
Red Hat Enterprise Linux 7 包含对运行 Docker 容器的官方支持,并且 Red Hat 提供了一组官方的 rhel Docker 镜像。这些镜像的一个有趣特性是可以通过主机的 Red Hat Network Subscription 安装软件包,而无需在容器内执行任何配置。
引用https://access.redhat.com/articles/881893#createimage:
“对于当前的 Red Hat Docker 版本,您从 Red Hat 中提取的默认 RHEL 7 Docker 映像将能够利用主机系统提供的 RHEL 7 权利。因此,只要您的 Docker 主机正确订阅并且存储库是启用您需要在容器中获取所需软件(并且可以从 Docker 主机访问 Internet),您应该能够从 RHEL 7 软件存储库安装软件包。”
我担心的是,实现这一目标的机制相当不透明。例如,当使用 rhel7.1 镜像启动一个新容器时,yum install foo
甚至可以在不配置 http 代理环境变量的情况下运行。如果不了解这种机制,系统管理员可能会受到主机系统、Docker 守护程序和正在运行的容器之间未知交互的影响。这也表明主机和容器之间的正常隔离在某种程度上受到了损害(尽管是以一种良性的方式)。
重点说一下:这种订阅支持是如何实现的,它是否依赖于 Red Hat 通过订阅网络提供的 Docker 守护程序的自定义构建?
了解 Red Hat Satellite 管理的虚拟机是如何获得许可的,并脱离 @Leynos 的评论,我希望有类似的东西virt-who
,它是一种与虚拟化主机(vSphere、KVM 等)对话并查询它的服务查找 VM 的详细信息。然后,它在 Satellite 中执行必要的 API 调用,以允许虚拟机使用主机的数据中心许可证。
我希望 Red Hat docker 守护进程提供类似的功能,让容器知道它是从订阅的 Docker 主机运行,从而利用该订阅。
也来自这里:
重要提示:如本主题中所述,使用 docker 命令运行容器并不特别要求您注册 RHEL Atomic Host 系统并附加订阅。但是,如果要在容器内运行 yum install 命令,容器必须从 RHEL Atomic Host 获取有效的订阅信息,否则将会失败。
因此,容器或守护进程中有些东西可以查询主机以查找订阅信息(也可能还有存储库信息)。
归档时间: |
|
查看次数: |
4064 次 |
最近记录: |