5.13. oc-mirror 插件 v2 的命令参考


下表描述了 oc mirror 子命令和 oc-mirror 插件 v2 的标志:

Expand
表 5.5. oc-mirror 插件 v2 的子命令和标志
子命令描述

帮助

显示有关任何子命令的帮助

version

输出 oc-mirror 版本

delete

删除远程 registry 和本地缓存中的镜像。

Expand
表 5.6. oc mirror 标记
标记描述

--authfile

显示身份验证文件的字符串路径。默认为 ${XDG_RUNTIME_DIR}/containers/auth.json

-c, --config <string>

指定镜像设置配置文件的路径。

--cache-dir <string>

使用此标志指定 oc-mirror 插件存储镜像 Blob 和清单在镜像操作过程中使用的持久缓存的目录。oc-mirror 插件使用 disk-to-mirrormirror-to-disk 工作流中的缓存,但不会在 mirror-to-mirror 工作流中使用缓存。该插件使用缓存来执行增量镜像,并避免重新镜像未更改的镜像,这会节省时间并减少网络带宽使用量。默认缓存目录为 $HOME。如需更多信息,请参阅"关于 --cache-dir 和 --workspace 标记"。

--dest-tls-verify

在访问容器 registry 或守护进程时,需要 HTTPS 并验证证书。默认值为 true

--dry-run

在不 mirror 镜像的情况下打印操作。

--from <string>

指定通过执行 oc-mirror 插件 v2 来加载目标 registry 生成的镜像设置存档的路径。

-h,--help

显示帮助

--image-timeout duration

mirror 镜像超时。默认值为 10m0s。有效的时间单位是 ns, us or µs, ms, s, m, 和 h

--log-level <string>

显示字符串日志级别。支持的值包括 info、debug、trace、error。默认值为 info

-p, --port

确定 oc-mirror 插件 v2 本地存储实例使用的 HTTP 端口。默认值为 55000

--parallel-images <unit>

指定并行镜像的镜像数量。该值必须在 1-10 范围内。默认值为 4

--parallel-layers <unit>

指定并行镜像的镜像层数量。该值必须在 1-10 范围内。默认值为 5

--max-nested-paths <int>

指定限制嵌套路径的目标 registry 的最大嵌套路径数。默认值为 0

--secure-policy

默认值为 false。如果您设置了非默认值,命令会启用签名验证,这是签名验证的安全策略。

--since

包含自指定日期以来的所有新内容(格式:yyyy-mm-dd)。如果没有提供,自以前的镜像(mirror)以来的新内容会被镜像。

--src-tls-verify

在访问容器 registry 或守护进程时,需要 HTTPS 并验证证书。

--strict-archive

默认值为 false。如果您设置了值,命令会生成比 imageSetConfig 自定义资源 (CR) 中设置的 archiveSize 的存档。如果正在归档的文件超过 archiveSize (GB),则镜像已存在。

-v, --version

显示 oc-mirror 插件 v2 的版本。

--workspace

您可以使用 --workspace 标志指定一个目录,其中 oc-mirror 插件存储它在镜像操作过程中创建的工作文件,如 ImageDigestMirrorSetImageTagMirrorSet 清单。使用此目录将生成的配置应用到集群并重复镜像操作。如需更多信息,请参阅"关于 --cache-dir 和 --workspace 标记"。

--retry-delay duration

2 次重试之间延迟。默认值为 1s

--retry-times <int>

要重试的次数。默认值为 2

--rootless-storage-path <string>

覆盖默认容器无根存储路径(通常为 etc/containers/storage.conf)。

--remove-signatures

不从源镜像复制签名。

--registries.d

指定包含 registry 配置文件的目录。

--secure-policy=true

为所有镜像启用签名验证。

--policy

指定签名验证策略文件的路径。

5.13.1. 删除镜像的命令参考

下表描述了 oc mirror 子命令和用于删除镜像的标志:

Expand
表 5.7. 用于删除镜像的子命令和标志
子命令描述

--authfile <string>

身份验证文件的路径。默认值为 ${XDG_RUNTIME_DIR}/containers/auth.json

--cache-dir <string>

使用此标志指定 oc-mirror 插件存储镜像 Blob 和清单在镜像操作过程中使用的持久缓存的目录。oc-mirror 插件使用 disk-to-mirrormirror-to-disk 工作流中的缓存,但不会在 mirror-to-mirror 工作流中使用缓存。该插件使用缓存来执行增量镜像,并避免重新镜像未更改的镜像,这会节省时间并减少网络带宽使用量。默认缓存目录为 $HOME。如需更多信息,请参阅"关于 --cache-dir 和 --workspace 标记"。

-c <string>, --config <string>

删除 imageset 配置文件的路径。

--delete-id <string>

用于区分由删除功能创建的文件的版本。

--delete-v1-images

在迁移过程中(与 --generate 一起),以针对之前使用 oc-mirror 插件 v1 镜像进行镜像的目标。

--delete-yaml-file <string>

如果设置,使用生成的或更新的 yaml 文件来删除内容。

--dest-tls-verify

与容器 registry 或守护进程对话时,需要 HTTPS 并验证证书。默认值为 true

--force-cache-delete

用于强制删除本地缓存清单和 blob。

--generate

用于为从本地缓存和远程 registry 中删除时使用的清单和 blob 列表生成 delete yaml。

-h,--help

显示帮助。

--log-level <string>

日志级别,是 info, debug, trace, 和 error 之一。默认值为 info

--parallel-images <unit>

指明并行删除的镜像数量。该值必须在 1-10 范围内。默认值为 4

--parallel-layers <unit>

指明并行删除的镜像层数。该值必须在 1-10 范围内。默认值为 5

-p <unit>, --port <unit>

oc-mirror 的本地存储实例使用的 HTTP 端口。默认值为 55000

--retry-delay

2 次重试之间的持续时间延迟。默认值为 1s

--retry-times <int>

要重试的次数。默认值为 2

--src-tls-verify

与容器 registry 或守护进程对话时,需要 HTTPS 并验证证书。默认值为 true

--workspace <string>

您可以使用 --workspace 标志指定一个目录,其中 oc-mirror 插件存储它在镜像操作过程中创建的工作文件,如 ImageDigestMirrorSetImageTagMirrorSet 清单。使用此目录将生成的配置应用到集群并重复镜像操作。如需更多信息,请参阅"关于 --cache-dir 和 --workspace 标记"。

5.13.2. 关于 --cache-dir 和 --workspace 标记

您可以使用 --cache-dir 标志指定一个目录,其中 oc-mirror 插件存储了镜像 Blob 和清单在镜像操作期间使用的持久缓存。

oc-mirror 插件使用 mirror-to-diskdisk-to-mirror 工作流中的缓存,但不会在 mirror-to-mirror 工作流中使用缓存。该插件使用缓存来执行增量镜像,并避免重新镜像未更改的镜像,这会节省时间并减少网络带宽使用量。

缓存目录仅包含最近一次成功的镜像操作的数据。如果您删除或损坏缓存目录,oc-mirror 插件会再次拉取镜像 Blob 和清单,这可以强制完全重新镜像并增加网络使用量。

您可以使用 --workspace 标志指定一个目录,其中 oc-mirror 插件存储它在镜像操作过程中创建的工作文件,如 ImageDigestMirrorSetImageTagMirrorSet 清单。您还可以使用工作区目录执行以下操作:

  • 为发行版本和 Operator 镜像存储解压缩的元数据。
  • 生成 tar 存档,以便在 disk-to-mirror 工作流中使用。
  • 将生成的配置应用到集群。
  • 重复或恢复以前的镜像操作。

如果您删除或修改 workspace 目录,则将来的镜像操作可能会失败,或者集群可能会使用不一致的镜像源。

警告

删除或修改缓存或工作区目录的内容可能会导致以下问题:

  • 镜像操作失败或不完整。
  • 增量镜像数据丢失。
  • 完全重新镜像的要求以及增加的网络开销。

除非您完全了解相关的影响,否则不要修改、重新定位或删除这些目录。在成功的镜像操作后,您必须定期备份缓存目录。不需要备份工作区目录,因为每个镜像周期都会重新生成其内容。

请考虑以下最佳实践,以便可以更好地管理缓存和工作区目录:

  • 使用持久性存储 :在可靠和备份存储上放置缓存和工作区目录。
  • 在成功操作后备份:常规备份缓存目录,特别是在完成镜像周期后。
  • 恢复 :如果出现数据丢失,请从备份中恢复缓存和工作区目录,以便在不执行完整重新镜像的情况下恢复镜像操作。
  • 独立的环境:为不同的环境使用专用目录以防止冲突。

在运行 oc-mirror 命令时,使用以下示例指定 cache 和 workspace 目录:

$ oc mirror --config=imageset-config.yaml \
    file://local_mirror \
    --workspace /mnt/mirror-data/workspace \
    --cache-dir /mnt/mirror-data/cache
    --v2
Copy to Clipboard Toggle word wrap

镜像操作完成后,您的目录结构如下:

/mnt/mirror-data/
├── cache/
│   ├── manifests/
│   ├── metadata.db
│   └── previous-mirror-state.json
└── workspace/
    ├── imageset-config-state.yaml
    ├── manifests/
    └── icsp/
Copy to Clipboard Toggle word wrap

每次成功镜像操作后,您必须备份 /mnt/mirror-data/cache 目录。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat