3.4. 使用内部 Maven 存储库


在受限环境中,您需要使用不同的 Maven 存储库。您可以使用名为 MAVEN_MIRROR_URL 的模板参数来指定它。您可以使用此 MAVEN_MIRROR_URL 参数从命令行创建新应用程序。

3.4.1. 使用 MAVEN_MIRROR_URL 运行 Spring Boot 应用程序

本例解释了如何使用 MAVEN_MIRROR_URL 部署和运行 Spring Boot 应用程序。

步骤

  1. 下载 Spring Boot Camel XML 快速入门。

    oc create -f ./spring-boot-2-camel-xml-template.json -n openshift
  2. 输入以下命令,使用 MAVEN_MIRROR_URL 参数创建运行 Spring Boot quickstart 模板所需的资源。

    在受限环境中,您还需要为本地存储库指定 GIT_REPOGIT_REF 参数。

    oc new-app s2i-fuse712-spring-boot-2-camel-xml -n {namespace} -p IMAGE_STREAM_NAMESPACE={namespace} -p MAVEN_MIRROR_URL={Maven mirror URL} -p GIT_REPO={Git Repo URL} -p GIT_REF={Git branch/tag name}

    这将为 Quickstart 创建部署配置和构建配置。有关 Quickstart 和创建的资源的默认参数的信息显示在终端上。

3.4.2. 使用 OpenShift Maven 插件运行 Spring Boot 应用程序

本例解释了如何使用内部 Maven 存储库部署并运行带有 OpenShift Maven 插件的 Spring Boot 应用程序。

步骤

  1. 要使用 OpenShift Maven 插件运行 Quickstart,请从本地存储库下载 Spring Boot 2 camel archetype,然后部署 Quickstart。将 {Maven Mirror URL} 替换为 Maven 镜像存储库 URL。

    mvn org.apache.maven.plugins:maven-archetype-plugin:2.4:generate \
      -DarchetypeCatalog={Maven Mirror URL}/archetypes/archetypes-catalog/2.2.0.fuse-7_12_0-00018-redhat-00001/archetypes-catalog-2.2.0.fuse-7_12_0-00018-redhat-00001-archetype-catalog.xml \
      -DarchetypeGroupId=org.jboss.fuse.fis.archetypes \
      -DarchetypeArtifactId=spring-boot-camel-xml-archetype
      -DarchetypeVersion=2.2.0.fuse-7_12_0-00018-redhat-00001
  2. archetype 插件切换到交互模式,以提示您输入剩余的字段。

    Define value for property 'groupId': : org.example.fis
    Define value for property 'artifactId': : fuse712-spring-boot2
    Define value for property 'version':  1.0-SNAPSHOT: :
    Define value for property 'package':  org.example.fis: :
    Confirm properties configuration:
    groupId: org.example.fis
    artifactId: fuse712-spring-boot
    version: 1.0-SNAPSHOT
    package: org.example.fis
     Y: : Y
  3. 如果上述命令以 BUILD SUCCESS 状态退出,则现在您应该在 fuse712-spring-boot2 子目录下在 OpenShift 项目中有一个新的 Fuse。
  4. 现在,您可以构建和部署 fuse712-spring-boot2 项目。假设您仍然登录到 OpenShift,请更改到 fuse712-spring-boot2 项目的 目录,然后构建和部署项目,如下所示:

    cd fuse712-spring-boot2
    mvn oc:deploy -Popenshift
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.