第 9 章 配置自定义 Maven 镜像
OpenShift Serverless Logic 默认使用 Maven Central 在工作流构建过程中解析 Maven 工件。提供的构建器和开发镜像包括运行工作流所需的所有 Java 库,但在某些情况下,比如在添加自定义 Quarkus 扩展时,您必须从 Maven Central 下载额外的依赖项。
在具有受限或防火墙网络访问的环境中,可能无法直接访问 Maven Central。在这种情况下,您可以将工作流容器配置为使用自定义 Maven 镜像,如内部公司 registry 或存储库管理器。
您可以在不同级别上配置自定义 Maven 镜像,如下所示:
-
通过更新
SonataFlowBuild自定义资源来为每个工作流构建。 -
在平台级别,更新
SonataFlowPlatform自定义资源。 -
对于开发模式,请编辑
SonataFlow自定义资源。 - 使用构建器镜像在外部构建自定义镜像时
9.1. 在构建工作流时添加 Maven 镜像 复制链接链接已复制到粘贴板!
您可以通过在 SonataFlowBuild 或 SonataFlowPlatform 自定义资源(CR)中设置 MAVEN_MIRROR_URL 环境变量来配置 Maven 镜像。
推荐的方法是更新 SonataFlowPlatform CR。这样可确保镜像配置自动传播到平台范围中的所有工作流构建。
先决条件
- 已在集群中安装了 OpenShift Serverless Logic Operator。
- 您已创建了 OpenShift Serverless Logic 项目。
- 您可以使用适当的角色和权限访问 OpenShift Serverless Logic 项目,以便在 OpenShift Container Platform 中创建应用程序和其他工作负载。
- 您可以访问自定义 Maven 镜像或内部存储库。
流程
编辑
SonataFlowPlatformCR,为命名空间中的所有工作流构建配置 Maven 镜像,如下例所示:SonataFlowPlatformCR 中的 Maven 镜像配置示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 此配置适用于使用
preview配置集的同一命名空间中的所有工作流构建。当工作流构建器实例运行时,它会更新内部 Maven 设置文件,以使用指定的 mirror 作为 Maven Central 等外部位置的默认设置。可选: 如果您需要单个工作流构建的特定配置,请在创建对应的
SonataFlowCR 前创建SonataFlowBuildCR。SonataFlowBuild和SonataFlowCR 必须具有相同的名称。SonataFlowBuildCR 中的 Maven 镜像配置示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意只有在需要工作流特定行为(如调试)时才可以使用
SonataFlowBuildCR 配置。对于常规用途,请配置SonataFlowPlatformCR。