如何将Docker调用并将图像从Go中的Google Cloud Builder中推到GCR



我希望过渡到Google Cloud Builder来构建我的项目。该项目包含了我想要构建并将其推向Google Container注册表的许多Docker图像。

我有一个COBRA CLI命令,可在Travis CI上效果很好,该命令可自动化覆盖(golintgo vet(,格式(gofmt(,测试(go test(,以及其他事物,例如自动化原始编译。该命令还发现,构建和推动存储库中每个可执行文件(package main(的Docker映像(有很多(。

我想过渡到Cloud Builder,但我还不清楚我该如何从Cobra CLI打电话给Docker。提供的go构建器映像gcr.io/cloud-builders/go没有Docker CLI和Docker Builder Image,gcr.io/cloud-builders/docker似乎没有go运行时。

有关如何设置云建造者YAML的任何建议,这将使我能够利用身份验证的Docker CLI,同时也为GO提供支持。

有趣的问题。

使用cloudbuild.yaml文件配置的云构建"构建"是(最佳(。此配置文件是您的CI | CD进程的声明性定义,应构成源repo的一部分,可以在Checkins等上运行。

最好将云构建视为管道处理器。它将一系列函数(顺序(应用于某些输入。通常,输出(工件(是容器图像(但不必是(。每个管道步骤都显示为容器(图像给定的一些输入,参数等(

因此,虽然云构建可以替代您的Travis作业,但您需要做一些工作,以转换似乎是一系列使用COBRA(gogolintgofmt(编程调用的命令行步骤。进入YAML中定义的一系列等效的容器化步骤。

这是Google支持的容器的列表。因为Cloud Build的工作单位是(纽约(容器(图像(,所以几乎可以使用任何内容。这是社区提供的图像列表。

golintgofmt未列出(尽管我认为有人已经构建了每个(。这些对于您来说是微不足道的,然后将其包含在您的管道中。如果您确实构建了它们,请将它们提交给社区回购。

GRPC protoc包括(链接(

最新更新