如何在 openshift 源中 运行 docker 图像而不通过 Web 控制台构建它
How to run a docker image in openshift origin without building it via web console
我开发了一个 docker 图像并将其推送到 openshift 中的 docker 注册表中。现在我需要通过传递一些 ENV 变量来 运行 docker 图像。如下图所示,当我点击 "Add to project" link 时,我的 docker 图片 "mycustomdaemon:latest" 被列出。
然而,当我点击图片时,它要求我提供构建配置和 Git 存储库 URL,如下图所示:
但是我只需要 运行 图像,不想重建它或执行任何此类操作。我如何才能使用它来简单地 运行 创建自定义 docker 图像而不执行任何操作操作?
我尝试通过发出 oc new-app
命令直接从 CLI 运行 图像,但得到以下错误输出。
error: can't look up Docker image "172.30.55.11:5000/default/mycustomdaemon:latest": Internal error occurred: Get https://172.30.55.11:5000/v2/: http: server gave HTTP response to HTTPS client
error: no match for "172.30.55.11:5000/default/mycustomdaemon:latest"
oc get is
命令产生以下输出:
我在 1.2.0
上完成了以下工作
首先,我在 OpenShift 中创建了一个项目,我想在其中使用我的图像。
$ oc new-project my-proj
然后我在该项目中创建了一个图像流,如 here
中所述
$ oc project my-proj
创建图像流
$ oc create -f - <<API
apiVersion: v1
kind: ImageStream
metadata:
annotations:
description: Keeps track of changes in the application image
name: myimage
API
name:
包含您的图片名称
比我标记我的形象。在 openshift 注册表上进行身份验证并推送图像。
验证
$ docker login -u test -e any@mail.com ....
标记我的图片:
$ docker tag original-image:latest 172.30.x.x/my-proj/myimage:latest
推送图片
$ docker push 172.30.x.x/my-proj/myimage:latest
您可以从您的环境内部(只需使用 service-ip)或从外部(使用您的安全注册表的主机名)进行推送。
之后我可以在我的 openshift 项目中创建我的图像 pod/container:
$ oc project my-proj
$ oc new-app my-proj/myimage:latest
我开发了一个 docker 图像并将其推送到 openshift 中的 docker 注册表中。现在我需要通过传递一些 ENV 变量来 运行 docker 图像。如下图所示,当我点击 "Add to project" link 时,我的 docker 图片 "mycustomdaemon:latest" 被列出。
然而,当我点击图片时,它要求我提供构建配置和 Git 存储库 URL,如下图所示:
但是我只需要 运行 图像,不想重建它或执行任何此类操作。我如何才能使用它来简单地 运行 创建自定义 docker 图像而不执行任何操作操作?
我尝试通过发出 oc new-app
命令直接从 CLI 运行 图像,但得到以下错误输出。
error: can't look up Docker image "172.30.55.11:5000/default/mycustomdaemon:latest": Internal error occurred: Get https://172.30.55.11:5000/v2/: http: server gave HTTP response to HTTPS client error: no match for "172.30.55.11:5000/default/mycustomdaemon:latest"
oc get is
命令产生以下输出:
我在 1.2.0
上完成了以下工作
首先,我在 OpenShift 中创建了一个项目,我想在其中使用我的图像。
$ oc new-project my-proj
然后我在该项目中创建了一个图像流,如 here
中所述$ oc project my-proj
创建图像流
$ oc create -f - <<API
apiVersion: v1
kind: ImageStream
metadata:
annotations:
description: Keeps track of changes in the application image
name: myimage
API
name:
包含您的图片名称
比我标记我的形象。在 openshift 注册表上进行身份验证并推送图像。
验证
$ docker login -u test -e any@mail.com ....
标记我的图片:
$ docker tag original-image:latest 172.30.x.x/my-proj/myimage:latest
推送图片
$ docker push 172.30.x.x/my-proj/myimage:latest
您可以从您的环境内部(只需使用 service-ip)或从外部(使用您的安全注册表的主机名)进行推送。
之后我可以在我的 openshift 项目中创建我的图像 pod/container:
$ oc project my-proj
$ oc new-app my-proj/myimage:latest