如何在openshift源码中运行Docker镜像,而无需通过Web控制台构build它

我有一个docker映像开发并推送到dockerregistry中openshift。 现在我需要通过传递一些ENVvariables来运行docker镜像。 如下图所示,当我点击“添加到项目”链接时,我的泊坞窗图像“mycustomdaemon:latest”被列出。

我的Docker镜像列在应用程序中

但是当我点击图片时,它要求我提供构buildconfiguration和一个Git仓库URL,如下图所示:

在这里输入图像说明

不过,我只需要运行该图像,不想重build它或执行任何此类操作。 我将如何能够解决它只是运行一个自定义docker的形象创build而不执行任何操作?

我试图通过发出oc new-app命令直接从CLI运行映像,但得到了以下错误输出。

错误:无法查找Docker镜像“172.30.55.11:5000/default/mycustomdaemon:latest”:发生内部错误:获取https://172.30.55.11:5000/v2/:http :服务器向HTTPS客户端发送了HTTP响应错误:不匹配“172.30.55.11:5000/default/mycustomdaemon:latest”

发出oc new-app命令时出错

oc get is命令产生以下输出:

oc get的输出是命令

对于我1.2.0下面的工作首先我在OpenShift中创build一个项目,我想要使用我的图像。

 $ oc new-project my-proj 

比我在这个项目里面创build一个图像stream,就像这里所描述的那样

 $ oc project my-proj 

创build图像stream

 $ oc create -f - <<API apiVersion: v1 kind: ImageStream metadata: annotations: description: Keeps track of changes in the application image name: myimage API 

name:包含您的图像的名称比我标记我的形象。 在openshiftregistry进行身份validation并推送图像。

authentication

 $ docker login -u test -e any@mail.com .... 

标记我的图片:

 $ docker tag original-image:latest 172.30.xx/my-proj/myimage:latest 

推动图像

 $ docker push 172.30.xx/my-proj/myimage:latest 

您可以从您的环境(仅使用service-ip)或从外部(使用您的安全registry的主机名)进行推送。

之后,我可以在我的openshift项目中创build一个我的图像的容器/容器:

 $ oc project my-proj $ oc new-app my-proj/myimage:latest