gpt4 book ai didi

docker - 本地构建的 Docker 镜像是否需要在每个 Kubernetes worker 上构建?

转载 作者:行者123 更新时间:2023-12-02 20:40:26 25 4
gpt4 key购买 nike

我正在做一个个人项目,以便最终学习 Kubernetes。经过一番努力,我设法获得了基本的nginx Docker 镜像(来自 Docker Hub)在 pod 上运行并作为 NodePort 服务公开。现在我有兴趣换掉 nginx我自己的应用程序的 Docker 镜像。
大多数在线教程都说“将你的镜像推送到 Docker Hub”,然后你告诉 Kubernetes 从 Docker Hub 加载你的镜像。但是,只要有可能,我宁愿避免对第三方服务的任何依赖(如果 5 年后 Docker Hub 出现故障,而我有一家公司的整个基础设施都依赖它呢?这是不太可能的情况,但这只是我为什么喜欢保持事物自足、孤立和独立)
我做了一些阅读,发现为了加载自定义 docker 图像 没有 Docker Hub 你必须在“Kubernetes 节点”上构建镜像。但是,如果我有一个由 2 个或更多节点组成的集群怎么办?图像是否需要在 上构建?每个 集群中的节点?或者,如果一个人知道镜像(可能是主镜像),它能否将文件系统层传递给其他人?
我会自己尝试一下,看看会发生什么,但我可能还需要几天的时间才能知道如何尝试。我还没有弄清楚如何在我的 Kubernetes 集群中运行任意 shell 命令——我只能创建 pod、副本集、部署和服务。在我深入学习如何在我的 Kubernetes 节点上构建我的镜像的兔子洞之前,我想弄清楚它是否值得我花时间。

最佳答案

如果您的目标是不依赖注册表作为 docker hub 之类的服务,那么您可以按照此处的 docker 说明安装自己的私有(private)本地注册表:
https://docs.docker.com/registry/deploying/
然后,您可以配置 Kubernetes 以从本地注册表中提取您的图像。这是我在 Google 快速搜索中找到的示例:
https://tortuemat.gitlab.io/blog/2018/03/18/kubernetes-with-local-registry/
说了这么多,我应该指出,此时 docker hub 已经成为标准,它不会很快消失。就好像 npm 或 apk 消失了

关于docker - 本地构建的 Docker 镜像是否需要在每个 Kubernetes worker 上构建?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64530470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com