Maven/Fabric8-针对远程OpenShift安装构建OpenShift容器映像

Maven/Fabric8-针对远程OpenShift安装构建OpenShift容器映像,openshift,fabric8,fabric8-maven-plugin,jkube,Openshift,Fabric8,Fabric8 Maven Plugin,Jkube,有了Docker,我只需要提供Docker_主机和适当的凭据,fabric8插件就可以构建我的容器映像。只要Docker注册表可用,就不需要在生成映像的实际主机上安装Docker相关的基础设施(例如my Bambole agent) 使用OpenShift,我似乎找不到这样做的方法。相反,我似乎必须在安装了OpenShift的主机上运行maven goals,该主机必须是RedHat Linux主机 这似乎比实际情况复杂得多。我是不是遗漏了什么 在OpenShift模式下,是否有方法从fabri

有了Docker,我只需要提供Docker_主机和适当的凭据,fabric8插件就可以构建我的容器映像。只要Docker注册表可用,就不需要在生成映像的实际主机上安装Docker相关的基础设施(例如my Bambole agent)

使用OpenShift,我似乎找不到这样做的方法。相反,我似乎必须在安装了OpenShift的主机上运行maven goals,该主机必须是RedHat Linux主机

这似乎比实际情况复杂得多。我是不是遗漏了什么

在OpenShift模式下,是否有方法从fabric8 maven插件引用远程OpenShift环境


谢谢,罗宾。

我是法布里克8队的。您不需要从安装了OpenShift的主机上运行目标。插件读取您的
~/.kube/config
以获取与OpenShift集群相关的信息,并使用API令牌与OpenShift REST API交互

已迁移到。尽管Fabric8 Maven插件在远程OpenShift集群上也可以正常工作。这是同一个Fabric8 Maven插件,但有不同的名称和目标OpenShift插件。我会用EclipseJkube的回答给出这个答案。您可以将其保存在
pom.xml
中,如下所示:


org.eclipse.jkube

  • 使用提供的凭据登录到OpenShift群集:
  • ~:$oc登录https://your-cluster.openshift.com--token=your-代币
    登录到“https://your-cluster.openshift.com:443使用提供的代币将其命名为“rohanKanojia”。
    您在此服务器上有一个项目:“rokumar”
    使用项目“rokumar”。
    
  • 转到您的项目并发布OpenShift Maven插件目标:
  • EclipseJkube演示项目:$mvn包oc:build oc:resource oc:apply [信息]正在扫描项目。。。 [信息] [信息]------------------------------------------------ [信息]构建随机生成器0.0.1 [信息]------------------------------------[jar]--------------------------------- [信息] [信息]---maven资源插件:3.1.0:resources(默认资源)@random generator--- [信息]使用“UTF-8”编码复制筛选的资源。 [信息]正在复制1个资源 [信息]正在复制0资源 [信息] [信息]---maven编译器插件:3.8.1:compile(默认编译)@random generator--- ... [信息]---maven jar插件:3.2.0:jar(默认jar)@random generator--- [INFO]构建jar:/home/rohaan/work/repos/eclipse jkube演示项目/target/random-generator-0.0.1.jar [信息] [信息]---spring boot maven插件:2.3.3.版本:重新打包(重新打包)@random generator--- [信息]用重新打包的归档文件替换主工件 [信息] [信息]---openshift maven插件:1.0.1-SNAPSHOT:build(默认cli)@random generator--- [INFO]oc:使用OpenShift构建策略S2I [INFO]oc:在OpenShift模式下运行 [信息]oc:正在运行发电机弹簧启动 [INFO]oc:spring引导:使用Docker image quay.io/jkube/jkube-java-binary-s2i:0.0.8作为base/builder [INFO]oc:[random generator:0.0.1]“spring boot”:创建docker源tar/home/rohaan/work/repos/eclipse jkube演示项目/target/docker/random generator/0.0.1/tmp/docker-build.tar [信息]oc:添加到Secret pullsecret jkube [INFO]oc:使用Secret pullsecret jkube [INFO]oc:为源生成创建BuildServiceConfig random-generator-s2i [信息]oc:添加到ImageStream随机生成器 [信息]oc:开始构建random-generator-s2i [信息]oc:正在等待生成random-generator-s2i-1完成。。。 [INFO]oc:使用quay.io/jkube/jkube-java-binary-s2i:0.0.8作为s2i构建器映像 [INFO]oc:INFO检测到带有普通二进制文件的S2I源代码生成 [INFO]oc:INFO检测到来自fabric8 maven插件的S2I二进制生成 [INFO]oc:INFO正在将二进制文件从/tmp/src/deployments复制到/deployments。。。 [INFO]oc:random-generator-0.0.1.jar [INFO]oc:INFO正在将部署从部署复制到/部署。。。 [INFO]oc:'/tmp/src/deployments/random-generator-0.0.1.jar'->'/deployments/random-generator-0.0.1.jar' [INFO]oc:INFO正在清理源目录(/tmp/src) [信息]oc: [信息]oc:Pusing image 172.30.39.149:5000/rokumar/random generator:0.0.1。。。 [信息]oc:推送0/4层,完成19% [信息]oc:推送1/4层,完成25% [信息]oc:推送成功 [信息]oc:构建random-generator-s2i-1处于完成状态 [信息]oc:在ImageStream随机生成器标记上找到标记:sha256:51756e1ff9b639c939f3c0c9246ab4ed924faa269bc9cbf05035c859d19fa50c [INFO]oc:ImageStream随机生成器写入/home/rohaan/work/repos/eclipse jkube演示项目/target/random-generator-is.yml [信息] [信息]---openshift maven插件:1.0.1-SNAPSHOT:resource(默认cli)@random generator--- [INFO]oc:使用命名空间的docker映像名称:rokumar [信息]oc:正在运行发电机弹簧启动 [INFO]oc:spring引导:使用Docker image quay.io/jkube/jkube-java-binary-s2i:0.0.8作为base/builder [INFO]oc:jkube控制器:添加默认部署配置 [INFO]oc:jkube服务:添加带有端口[8080]的默认服务“random generator” [INFO]oc:jkube-healthcheck-spring引导:在端口8080上添加就绪探测,路径='/exactor/health',scheme='HTTP',初始延迟10秒 [INFO]oc:jkube-healthcheck-spring-boot:在端口8080上添加活动探测器,路径='/exactor/health',scheme='HTTP',初始延迟180秒 [信息]oc:jkube修订历史:将修订历史限制添加到2 [INFO]oc:validating/home/rohaan/work/repos/eclipse jkube演示项目/target/classes/META-INF/jkube/openshift/random-generator-service.yml资源 [INFO]oc:validating/home/rohaan/work/repos/eclipse jkube演示项目/target/classes/META-INF/jkube/openshift/random-generator-route.yml资源 [INFO]oc:validating/home/rohaan/work/repos/eclipse-jkube-demo-project/target/classes/META-INF/jkube/openshift/rand