第 3 章 嵌入应用程序供离线使用


您可以在 Red Hat Enterprise Linux for Edge (RHEL for Edge)镜像中嵌入基于微服务的工作负载和应用程序。嵌入意味着您可以在 air-gapped、断开连接或离线环境中运行 MicroShift 集群的红帽构建。

3.1. 嵌入工作负载容器镜像供离线使用

要在没有网络连接的边缘将容器镜像嵌入到设备中,您必须创建新容器,挂载 ISO,然后将内容复制到文件系统中。

先决条件

  • 有对主机的 root 访问权限。
  • 应用程序 RPM 已添加到蓝图中。

流程

  1. 呈现清单,提取所有容器镜像引用,并通过运行以下命令来将应用程序镜像转换为蓝图容器源:

    $ oc kustomize ~/manifests | grep "image:" | grep -oE '[^ ]+$' | while read line; do echo -e "[[containers]]\nsource = \"${line}\"\n"; done >><my_blueprint>.toml
  2. 运行以下命令,将更新的蓝图推送到镜像构建器:

    $ sudo composer-cli blueprints push <my_blueprint>.toml
  3. 如果您的工作负载容器位于私有存储库中,则必须为镜像构建器提供所需的 pull secret:

    1. /etc/osbuild-worker/osbuild-worker.toml 文件中的 osbuilder worker 配置的 [containers] 部分中设置 auth_file_path,以指向 pull secret。
    2. 如果需要,为 pull secret 创建目录和文件,例如:

      目录和文件示例

      [containers]
      auth_file_path = "/<path>/pull-secret.json" 1

      1
      使用之前设置的自定义位置来复制和检索镜像。
  4. 运行以下命令来构建容器镜像:

    $ sudo composer-cli compose start-ostree <my_blueprint> edge-commit
  5. 继续您首选的 rpm-ostree 镜像流,如等待构建完成,导出镜像并将其集成到 rpm-ostree 存储库或创建可引导 ISO。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.