2

我在Operator SDK的帮助下创建了我的 Kubernetes 操作员 现在我想用我的 GitHub 存储库进行一些自动构建,所以当我将某些内容推送到主服务器以触发操作员映像的构建时。

我可以使用go build + docker build(用于构建图像)而不是operator-sdk build

因为如果它在做同样的工作,我不想再依赖一种工具来构建图像。

operator-sdk build--verbose它运行,看起来它只做这两件事(go build + docker build),但我不确定。如果我不想存在这样的验证,我不想跳过它们,那么在这些命令之前可能会有一些验证和检查。

使用godocker直接构建图像而不是一个坏主意operator-sdk?因为我不想在构建过程中做一些特别的事情,所以如果可以避免的话,我只想在构建基础架构中不再依赖它。

4

1 回答 1

2

我遇到了一个类似的问题,如果您查看 的源代码operator-sdk,它实际上会触发go build一个docker build(CLI,甚至不是 的 API docker build)。所以是的,我写了一个简单的 docker 文件来做一个go build. 就是这样。

编辑:这是docker build命令如何形成并最终作为系统命令运行的来源:https ://github.com/operator-framework/operator-sdk/blob/master/cmd/operator-sdk/build/cmd.go #L98

于 2020-05-01T22:51:57.243 回答