您有两种选择。
SBT本地打包
首先选择将要使用的SBT本地打包SBT生成器来创建你的泊坞窗图像(手动或使用像詹金斯)。开箱后,您应该可以运行sbt docker:publishLocal
并获取本地泊坞窗图像,然后您可以将其推送到Docker回购站。然后,您可以在oc new-app <docker repo>/<docker image>:<image version>
的openshift中启动它。
这是因为你的图像是在别处构建的,你并没有真正充分利用OpenShift的优势。但它可能适合您当前的开发流程。
上行是你的码头图像会很小。 SBT在打包所有依赖方面做得很好。
源到图像
第二个选择是创建自己的source to image制造商,它知道如何构建SBT /播放项目。这是我的团队采取的道路。您可以参考our sbt builder以供参考,但它的质量仍然处于最佳状态。
这个过程的不足之处在于,您的所有来源都包含在图像中,因此它的体积更大。也没有人支持这个建设者,所以如果你有错误,你是你自己的。
最重要的是,OpenShift将构建您的图像,您将在OpenShift Web控制台中看到您的构建状态。
注意
随着OpenShift产地1.3.0你也将获得访问詹金斯管道。这可以使以上两种情况中的任何一种更容易。你结束了一个很酷的Web界面,看起来像这样:
希望红帽将支持原生SBT在某些时候,但现在这两个流中的一个应该为你工作。
嗨,帕特里克,感谢您的回复。只是尝试在我的w10虚拟机中安装docker,这是行不通的。接下来将尝试源图像处理方法。由于我对此完全陌生,你能否快速一步一步地在openshift(在线)上获取源代码;我想有必要通过git的方式?谢谢! –
要开始您想要从https://github.com/openshift/origin/releases/tag/v1.3.0安装二进制文件,然后运行'oc cluster up'。你不应该需要任何源代码。 –
'oc cluster up'命令似乎也需要在本地安装docker(我无法在我的虚拟机环境中执行)?我得到这个输出: '$ oc集群up - 检查OpenShift客户端...确定 - 检查Docker客户端...失败 错误:无法与Docker通信# 我以为我的代码可能是'dockerized '通过Openshift本身,只需将我的代码推送到一个拥有webshook到一个Openshift项目的git存储库?但据我现在了解,我认为我需要在Openshift上获得一个基本的码头图像,然后我可以推送代码? –