是Dockerfiles可在谷歌集装箱注册谷歌的样本图像?(Are Dockerfiles avai

2019-09-30 20:10发布

我使用Kubernetes正式稳定的ZooKeeper头盔图表,其拉动的ZooKeeper泊坞窗图像从谷歌的谷歌上注册的容器样品图像。

这ZooKeeper的图像可在这里 ,但我似乎无法找到它是如何构建的,或者如果它Dockerfile从其他一些代表产生的任何Dockerfile引用(例如, 通过巴泽尔 )。 我想知道像什么其他安装了图像信息,什么操作系统它是基于等。

一般是对谷歌的样本图像Dockerfiles公开托管上可用GCR?

对于具体的动物园管理员的形象,我想,以确定如何比较汇合的ZooKeeper的图像 :这是类似的? 它是否捆绑一些额外的对Kubernetes上运行的ZooKeeper? 等等

到目前为止,我已经做了相当多的谷歌搜索,通过阅读谷歌集装箱注册表文件 ,围绕戳谷歌组织在GitHub上 ,并搜查堆栈溢出 ,但一直没能找到这个信息。

Answer 1:

请不要从使用图像gcr.io/google-samples用于生产。

这些图片只用于在cloud.google.com GKE教程和他们不积极维护,在这个意义上,我们不会重建他们的安全漏洞有关影像等部件

对于一些图像的源代码是在https://github.com/GoogleCloudPlatform/kubernetes-engine-samples/ 。



Answer 2:

对于实际看到的图像之间的差异,我不会相信Dockerfile。 有没有办法保证一个给定的图像由给定Dockerfile产生的,因为他们是不可复制的。

你看着容器差异 ?

$ container-diff diff confluentinc/cp-zookeeper gcr.io/google-samples/k8szk:v2

如果你想要的东西更轻量级(和你信任的图像生成器),你可以搜集从配置文件中的一些信息, "history" ,它具有大致映射到原来的Dockerfile条目。

对于gcr.io/google-samples/k8szk:v2 ,你可以这样做:

$ curl -L https://gcr.io/v2/google-samples/k8szk/blobs/sha256:2fd25e05d6e2046dc454f57e444214756b3ae459909d27d40a70258c98161737 | jq .

(这只是下载配置BLOB,你可以找到的配置清单文件摘要。)

对于所产生的图像bazelbuild / rules_docker ,这将只是“巴泽尔构建...”为每个条目,这是不是很对你有用:)

如果您要查找的基本图像,我已经成功的只是谷歌搜索中体现的第一个条目的SHA256摘要数量惊人的"layers"

尤其对于饲养员图像,它看起来像它可能是基于ubuntu:xenial-20161213



文章来源: Are Dockerfiles available for Google's sample images on Google Container Registry?