Kubernetes OpenShift-如何创建新的图像流?
我正在构建OpenShift s2i图像。为了帮助简化开发,我想基于这个s2i图像创建一个图像流,这样我就可以快速测试s2i的更改以及源代码库中的更改是否有效 我找不到任何创建新图像流的Kubernetes OpenShift-如何创建新的图像流?,kubernetes,openshift,openshift-client-tools,Kubernetes,Openshift,Openshift Client Tools,我正在构建OpenShift s2i图像。为了帮助简化开发,我想基于这个s2i图像创建一个图像流,这样我就可以快速测试s2i的更改以及源代码库中的更改是否有效 我找不到任何创建新图像流的oc命令 我尝试使用下面的yml创建一个图像流 kind: "BuildConfig" apiVersion: "v1" metadata: name: "s2i-cpp" annotations: openshift.io/build-config.name: s2i-cpp labels
oc
命令
我尝试使用下面的yml创建一个图像流
kind: "BuildConfig"
apiVersion: "v1"
metadata:
name: "s2i-cpp"
annotations:
openshift.io/build-config.name: s2i-cpp
labels:
build: s2i-cpp
buildconfig: s2i-cpp
openshift.io/build-config.name: s2i-cpp
openshift.io/build.start-policy: Serial
spec:
source:
contextDir: "dockerfiles/builder"
git:
ref: master
uri: 'https://gitlab.com/myrepo/s2i-cpp-wine.git'
sourceSecret:
name: gitlab-priceinsight
type: Git
strategy:
type: Docker
dockerStrategy:
dockerfilePath: dockerfiles/builder/
output:
to:
kind: "ImageStreamTag"
name: "s2i-cpp:latest"
虽然我可以使用occreate-f imagestream.yml创建此文件,但当我尝试运行此文件时,它会立即出现无效输出引用的错误。我的期望是它将创建一个新的映像。转到project namescape或使用-n
使用yaml文件创建构建
oc创建-f.yaml
您首先在哪里构建S2I图像?如果在OpenShift中将S2I映像本身构建为docker
构建策略,则会为您创建一个映像流。如果已将图像推送到Docker Hub,则可以使用oc导入图像
。如果可以访问OpenShift的内部图像注册表,并且您先登录,您也可以直接将其推入该注册表。谢谢Graham。是的,我可以推到内部注册表,但有东西坏了。是的,我正在操作系统中构建s2i。刚刚意识到我已经有了一个图像流。谢谢,最后的问题是什么?那么@Rameez的答案有什么问题?
oc project <your namespace>
oc create imagestream <image-name>
output:
to:
kind: ImageStreamTag
name: 'image-name:latest'
oc create -f <build>.yaml