使用Openshift s2i二进制构建向图像添加标签

使用Openshift s2i二进制构建向图像添加标签,openshift,openshift-client-tools,s2i,Openshift,Openshift Client Tools,S2i,我想为我使用Openshift源代码创建的图像添加一些标签(提交哈希、分支名称等),以进行图像二进制构建。对于每个构建,这些标签自然具有不同的值 当前,oc start build甚至不支持-e标志来添加环境变量。(至少看起来是这样,它适用于Git源代码,这是一个bug?) 对于二进制生成,不支持通过--build arg传递docker文件的参数 我能够实现这一点的唯一方法是调用oc set env bc[build name],然后启动构建。并将Dockerfile中的标签与环境变量中的值一

我想为我使用Openshift源代码创建的图像添加一些标签(提交哈希、分支名称等),以进行图像二进制构建。对于每个构建,这些标签自然具有不同的值

当前,
oc start build
甚至不支持-e标志来添加环境变量。(至少看起来是这样,它适用于Git源代码,这是一个bug?)

对于二进制生成,不支持通过
--build arg
传递docker文件的参数

我能够实现这一点的唯一方法是调用
oc set env bc[build name]
,然后启动构建。并将Dockerfile中的标签与环境变量中的值一起使用

我的问题是,有没有更好的办法?(理想情况下Dockerfile不需要更改)s2i不支持将
--label
传递给docker build behind吗


谢谢。

在启动
oc start build
时,是否要添加
环境变量
?因为您提到了
oc set env bc[build name]
。 然后您可以使用
--env==
选项,有关更多详细信息,请参阅

$ oc start-build <buildconfig_name> --env=<key>=<value>
$oc开始构建--环境==

我希望它能对您有所帮助。

您想在启动
oc start build
时添加
环境变量吗?因为您提到了
oc set env bc[build name]
。 然后您可以使用
--env==
选项,有关更多详细信息,请参阅

$ oc start-build <buildconfig_name> --env=<key>=<value>
$oc开始构建--环境==

我希望它能帮助您。

是的,这将是一个更好的解决方案。但是--env/-e由于某些原因不适用于二进制构建—将在github中为它们创建问题。(它适用于Git源代码构建:O)是的,这将是一个更好的解决方案。但是--env/-e由于某些原因不适用于二进制构建—将在github中为它们创建问题。(它适用于Git源代码构建:O)