13.6.6. 镜像修剪 CLI 选项


下表描述了您可以与 oc adm prune images <image_prune_option> 命令一起使用的选项。

Expand
表 13.4. 手动镜像修剪命令选项
选项描述

--all

包括没有推送到 registry 但已通过 pullthrough 镜像的镜像。默认为开启。要将修剪限制为已被推送到集成 registry 的镜像,请传递 --all=false

--certificate-authority

与 OpenShift Container Platform 管理的 registry 通信时使用的证书颁发机构文件的路径。默认为来自当前用户配置文件的证书颁发机构数据。如果提供,则发起安全连接。

--confirm

指明应该执行修剪,而不是空运行。这需要具有指向集成容器镜像 registry 的有效路由。如果此命令在集群网络外运行,则必须使用 --registry-url 来提供路由。

--force-insecure

谨慎使用这个选项。允许与通过 HTTP 托管或具有无效 HTTPS 证书的容器 registry 进行不安全连接。

--keep-tag-revisions=<N>

对于每个镜像流,每个标签最多保留 N 个镜像修订(默认值 3)。

--keep-younger-than=<duration>

不修剪相对于当前时间年龄不到 <duration> 的镜像。或者,不修剪被相对于当前时间年龄不到 <duration> 的其他对象引用的镜像(默认值 60m)。

--prune-over-size-limit

修剪超过同一项目中定义的最小限值的每个镜像。此标志不能与 --keep-tag-revisions--keep-younger-than 结合使用。

--registry-url

联系 registry 时使用的地址。此命令尝试使用由受管镜像和镜像流决定的集群内部 URL。如果失败(registry 无法解析或访问),则需要使用此标志提供一个替代路由。可以在 registry 主机名中加上前缀 https://http:// 来强制执行特定的连接协议。

--prune-registry

此选项与其他选项指定的条件结合,可以控制是否修剪 registry 中与 OpenShift Container Platform 镜像 API 对象对应的数据。默认情况下,镜像修剪同时处理镜像 API 对象和 registry 中对应的数据。

当您只关注移除 etcd 内容时(可能要减少镜像对象的数量,但并不关心清理 registry)或要通过硬修剪 registry 来单独进行操作(可能在 registry 的适当维护窗口期间),此选项很有用处。

13.6.6.1. 有关 --prune-registry 标志的附加信息

您可以通过传递 --prune-registry=false 标志,将 OpenShift Container Platform 镜像 API 对象从 registry 中删除镜像数据分开。例如,以下命令只修剪 API 对象,registry 存储保持不变:

$ oc adm prune images --keep-tag-revisions=3 --keep-younger-than=60m --confirm --prune-registry=false

然后,您可以对 registry 执行硬修剪,以删除关联的镜像数据。与在单个命令中修剪这两者相比,这种方法可以缩小出现竞争条件的时间窗口。

但是,这并不能完全消除时间窗口。例如,在标识该镜像以进行修剪时,仍有可能会创建引用相关镜像的 pod。您应该跟踪在修剪过程中创建的任何 API 对象,以确保它们不引用已删除的内容。

在不使用 --prune-registry 选项或使用 --prune-registry=true 的情况下重新运行修剪,不会删除之前使用 --prune-registry=false 修剪的镜像的相关 registry 存储。这些镜像只能通过执行 registry 硬修剪来从 registry 存储中删除。如需更多信息,请参阅"硬修剪 registry"。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部