4.23. 容器
Podman 现在支持安全简短名称
现在可以在 [aliases]
表中的 registries.conf
文件中配置镜像的短名称别名。简短名称模式为:
-
Enforcing:如果在镜像拉取过程中找不到匹配的别名,则 Podman 会提示用户选择一个非限定 registry。如果成功拉取了所选镜像,Podman 会自动在
$HOME/.cache/containers/short-name-aliases.conf
文件(rootless 用户)和/var/cache/containers/short-name-aliases.conf
中记录一个新的短名称别名。如果无法提示用户(例如,stdin 或 stdout 而不是 TTY),则 Podman 会失败。请注意,如果两者都指定了相同的别名,则short-name-aliases.conf
文件优先于registries.conf
文件。 - Permissive:与 enforcing 模式类似,但如果用户无法提示,Podman 不会失败。相反,Podman 会按照指定顺序搜索所有非限定 registry。请注意,没有记录别名。
例如:
unqualified-search-registries=["registry.fedoraproject.org", "quay.io"] [aliases] "fedora"="registry.fedoraproject.org/fedora"
(JIRA:RHELPLAN-74542)
container-tools
模块的更改
container-tools
模块包含 Podman、Buildah、Skopeo 和 runc 工具。滚动流,由 RHEL 8 中的 container-tools:rhel8
流表示,在 RHEL 9 中命名为 container-tools:latest
。与 RHEL 8 类似,容器工具的稳定版本也会以数字化的流(如 3.0)提供。
有关 Container Tools Application Stream 的更多信息,请参阅 Container Tools AppStream - Content Availability。
(JIRA:RHELPLAN-73678)
containers-common
软件包现在可用
containers-common
软件包已添加到 container-tools:latest
模块中。containers-common
软件包包含常见配置文件和容器工具生态系统文档,如 Podman、Buildah 和 Skopeo。
(JIRA:RHELPLAN-77549)
使用新软件包更新容器镜像
例如,要使用最新的软件包更新 registry.access.redhat.com/rhel9
容器镜像,请使用以下命令:
# podman run -it registry.access.redhat.com/rhel9 # dnf update -y && rm -rf /var/cache/dnf
要安装特定的 <package>
,请输入:
# dnf install <package>
如需更多信息,请参阅 将软件添加到正在运行的 UBI 容器中。
请注意,对于 RHEL 9,在镜像中更新或安装新软件包需要您在授权主机上运行。您可以使用 Red Hat Enterprise Linux Developer 订阅进行单独订阅,以免费获得授权存储库的访问权限。
如需更多信息,请参阅 No-cost Red Hat Enterprise Linux 独立开发人员订阅:常见问题.
(JIRA:RHELPLAN-84168)
container-tools
meta-package 已更新
包含 Podman、Buildah、Skopeo 和 runc 工具的container-tools
RPM 元软件包可用。与之前的版本相比,这个版本提供了程序错误修正和增强的列表。
(JIRA:RHELPLAN-118914)
podman-py
软件包现在可用
podman-py
软件包已添加到 container-tools:3.0
stable 模块流和 container-tools:latest
模块中。podman-py
软件包是要使用的 Podman RESTful API 的绑定库。
控制组群版本 2 现已正式发布
之前版本的控制组 1(cgroups v1)会导致各种应用程序的性能问题。最新版本的控制组 2(cgroups v2)可让系统管理员限制任何应用程序的资源,而不造成性能问题。
这个新版本的控制组群(cgroup v2)可在 RHEL 8 中启用,在 RHEL 9 中被默认启用。
(JIRA:RHELPLAN-73697)
container-tools
meta-package 现已正式发布
RHEL 9 提供了 container-tools
RPM meta-package 包括 Podman、Buildah、Skopeo、CRIU、Udica 和所有必需库。RHEL 9 不提供 stable 流。要获得对 Podman 的稳定访问、Buildah、Skopeo 等,请使用 RHEL EUS 订阅。
要安装 container-tools
meta-package,请输入:
# dnf install container-tools
(BZ#2000871)
现在,内核中的原生覆盖文件系统支持
覆盖文件系统支持现在可从内核 5.11 获得。非 root 用户即使在无根用户(作为用户)时,也具有原生的覆盖性能。因此,这个增强为希望在不需要绑定挂载的情况下使用 overlayfs 的非 root 用户提供更好的性能。
(JIRA:RHELPLAN-99892)
NFS 存储现在可用
现在,如果您的文件系统支持 xattr,则可以使用 NFS 文件系统作为容器和镜像的后端存储。
(JIRA:RHELPLAN-74543)
container-tools
meta-package 已更新
container-tools
meta-package 包括 Podman、Buildah、Skopeo、CRIU、Udica 以及所有必需的库。与之前的版本相比,这个版本提供了程序错误修正和增强的列表。
主要变更包括:
- 由于网络堆栈的变化,Podman v3 和更早版本所创建的容器在 Podman v4.0 中不可用
- 原生覆盖文件系统可作为无根用户使用
- 现在容器中支持 NFS 存储
- 控制组群版本 2(cgroup v2)被默认启用
- 除非所有容器被销毁并重新创建,否则不支持从 Podman v4 降级到 v3
有关 Podman 中显著变化的更多信息,请参阅上游发行注记。
(JIRA:RHELPLAN-99889)
crun
容器运行时现在为默认
crun
容器运行时现在是默认的运行时。crun
容器运行时支持注解,允许容器访问非根用户的额外组。这对设置 setgid 或用户只能访问组的目录中的卷挂载有用。crun
和 runc
运行时都完全支持 cgroup v2
。
(JIRA:RHELPLAN-99890)
控制组群版本 2 现已正式发布
以前的控制组群版本 cgroup 版本 1(cgroup v1)会导致各种应用程序出现性能问题。最新版本的控制组 cgroup 版本 2(cgroup v2)可让系统管理员为任何应用程序限制资源,而不会造成性能问题。
在 RHEL 9 中,cgroup v2 被默认启用。
(JIRA:RHELPLAN-75322)
通用基础镜像现在包括在 Docker Hub 中
在以前的版本中,通用基础镜像只包括在 Red Hat 容器目录中。在这个版本中,Docker Hub 中也提供了通用基础镜像作为 Verified Publisher 镜像。
(JIRA:RHELPLAN-100032)
openssl
容器镜像现在可用
openssl
镜像提供了一个 openssl
命令行工具,用于使用 OpenSSL 加密库的不同功能。使用 OpenSSL 库,您可以生成私钥、创建证书签名请求(CSR)并显示证书信息。
openssl
容器镜像位于这些存储库中:
- registry.redhat.io/rhel9/openssl
- registry.access.redhat.com/ubi9/openssl
(JIRA:RHELPLAN-100034)
Netavark 网络堆栈现在可用
Netavark 堆栈是容器的网络配置工具。在 RHEL 9 中,Netavark 堆栈被完全支持并启用。
此网络堆栈具有以下功能:
- 创建、管理和删除网络接口,包括网桥和 MACVLAN 接口
- 配置防火墙设置,如网络地址转换(NAT)和端口映射规则
- IPv4 和 IPv6
- 改进了多个网络中容器的功能
(JIRA:RHELPLAN-101141)
Podman 现在支持使用 YAML 文件自动构建和自动运行的 pod
podman play kube
命令会使用 YAML 文件自动构建并运行带有 pod 中多个容器的多个 pod。
(JIRA:RHELPLAN-108830)
Podman 现在可以从 IdM 提供子UID 和 subGID 范围
subUID 和 subGID 范围现在可以由 IdM 管理。现在,您可以在单个中央存储中定义范围,而不是将相同的 /etc/subuid
和 /etc/subgid
文件部署到每一主机中。您必须修改 /etc/nsswitch.conf
文件,将 sss
添加到 services map 行:services: files sss
。
如需了解更多详细信息,请参阅 IdM 文档中的 手动管理子ID 范围 部分。
(JIRA:RHELPLAN-100020)