如何在openshift源码中运行Docker镜像,而无需通过Web控制台构build它
我有一个docker映像开发并推送到dockerregistry中openshift。 现在我需要通过传递一些ENVvariables来运行docker镜像。 如下图所示,当我点击“添加到项目”链接时,我的泊坞窗图像“mycustomdaemon:latest”被列出。
但是当我点击图片时,它要求我提供构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 get is
命令产生以下输出:
对于我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