如何在OpenShift中使用凭据创建应用程序?

时间:2017-09-26 11:05:55

标签: openshift

尝试在终端Node.js中创建OpenShift个应用,如下所示:

./oc new-app https://j4nos@bitbucket.org/j4nos/nodejs.git

私人帐户BitBucket中的源代码,如何设置凭据?一旦它要求密码,但不是再次。我该如何设置凭证?

enter image description here

从GUI添加了带注释的秘密:repo-at-bitbucket

enter image description here

我已阅读Private Git Repositories: Part 2A教程,奇怪的是,HTTPD应用提交了Source Secret来选择机密,但不是Node.js + MongoDB组合时被选中。为什么呢?

啊......需要选择纯Node.js app。

enter image description here

1 个答案:

答案 0 :(得分:1)

您需要对私有git存储库进行身份验证。这可以通过几种不同的方式完成。我建议花几分钟时间阅读这个博客系列,其中概述了你可以采取的不同方法。

https://blog.openshift.com/private-git-repositories-part-1-best-practices/

首先阅读最初几篇解释概念并使用Gi​​tHub执行此操作的帖子,然后再看看BitBucket示例。

https://blog.openshift.com/private-git-repositories-part-5-hosting-repositories-bitbucket/

那些GitHub示例有更多解释,这将使BitBucket示例更容易理解。

运行oc new-app时提示输入密码的可能原因是您使用过:

oc new-app https://j4nos@bitbucket.org/j4nos/nodejs.git

具体而言,您未指定要使用的S2I构建器。因此,oc new-app将尝试在本地签出repo以对其进行分析,以尝试找出它使用的语言。这就是为什么它会单独提示输入密码。

最好在命令上指定构建器名称:

oc new-app nodejs~https://j4nos@bitbucket.org/j4nos/nodejs.git

这是命令的缩写形式,与运行相同:

oc new-app --strategy=source --image-stream nodejs --code https://j4nos@bitbucket.org/j4nos/nodejs.git

如果您指定构建器,它已经知道要使用什么,并且不会分析代码,因此不会提示输入密码,而且您不需要URI中的用户。

无论哪种方式,在OpenShift中构建时,您仍然需要basicauth秘密,并且应该对其进行注释,以便它知道使用该构建的秘密。