2.11. 准备 Maven 镜像存储库以供离线使用

如果您的 Red Hat OpenShift Container Platform 环境无法传出访问公共互联网,您必须准备一个 Maven 存储库,其中包含所有必要的工件的镜像,并将此存储库提供给您的环境。

注意

如果您的 Red Hat OpenShift Container Platform 环境连接到互联网,则不需要完成此流程。

先决条件

  • 具有一个可以传出访问公共互联网的计算机。

流程

  1. 配置具有写入访问权限的 Maven 发行版本存储库。存储库必须在不进行身份验证的情况下允许读取访问权限,而且您的 OpenShift 环境必须具有对此存储库的网络访问。

    您可以在 OpenShift 环境中部署 Nexus 存储库管理器。有关在 OpenShift 中设置 Nexus 的说明,请参阅 Red Hat OpenShift Container Platform 3.11 文档中的 设置 Nexus。所记录的步骤适用于 Red Hat OpenShift Container Platform 4。

    使用此存储库作为镜像来托管公开的 Maven 工件。您还可以在此存储库中提供自己的服务,以便在不可变服务器上部署这些服务,或使用 Business Central 监控将其部署到受管服务器上。

  2. 在与公共互联网传出连接的计算机上完成以下步骤:
  3. 导航到红帽客户门户网站中的 Software Downloads 页面(需要登录),然后从下拉菜单中选择产品和版本:

    • 产品 : Red Hat Process Automation Manager
    • Version: 7.11

      1. 下载并提取 Red Hat Process Automation Manager 7.11.0 Offliner 内容列表(rhpam-7.11.0-offliner.zip)产品可交付文件。
      2. rhpam-7.11.0-offliner.zip 文件的内容提取到任何目录中。
      3. 进入该目录并输入以下命令:

        ./offline-repo-builder.sh offliner.txt

        此命令创建 存储库 子目录,并将必要的工件下载到此子目录中。这是镜像存储库。

        如果消息报告某些下载失败,请再次运行相同的命令。如果下载再次失败,请联系红帽支持。

      4. 将存储库子目录中的所有工件上传到您准备的 Maven 镜像存储库。您可以使用 Maven 存储库工具 Git 存储库提供的 Maven Repository Provisioner 实用程序上传工件。
  4. 如果您在 Business Central 外部开发了服务,并且它们还有额外的依赖项,请将依赖项添加到镜像存储库中。如果您以 Maven 项目的形式开发了服务,您可以使用以下步骤自动准备这些依赖项。完成具有到公共互联网传出连接的计算机上的步骤。

    1. 创建本地 Maven 缓存目录的备份(~/.m2/repository),然后清除该目录。
    2. 使用 mvn clean install 命令构建项目源。
    3. 对于每个项目,输入以下命令来确保 Maven 下载项目生成的所有工件的所有运行时依赖项:

      mvn -e -DskipTests dependency:go-offline -f /path/to/project/pom.xml --batch-mode -Djava.net.preferIPv4Stack=true

      /path/to/project/pom.xml 替换为项目的 pom.xml 文件的路径。

    4. 将本地 Maven 缓存目录(~/.m2/repository)中的所有工件上传到您准备的 Maven 镜像存储库。您可以使用 Maven 存储库工具 Git 存储库提供的 Maven Repository Provisioner 实用程序上传工件。