docker Image在没有dockerhub.com的情况下部署并在Jenkins中使用的可行性

docker Image在没有dockerhub.com的情况下部署并在Jenkins中使用的可行性,jenkins,kubernetes,Jenkins,Kubernetes,我正在尝试使用kubernetes和Jenkins来部署使用SpringBoot开发的微服务。当我探索时,许多Youtube视频和其他文档教程都使用dockerhub.com作为存储库保存已发布的图像。在这里我感到有点怀疑。我在这里补充说, 我可以使用Jenkins docker image build在kubernetes中部署docker映像而不使用dockerhub.com吗?Menas我不想在公共场所共享客户端代码。那么我可以不用dockerhub.com使用Jenkins吗 有人能澄清

我正在尝试使用kubernetes和Jenkins来部署使用SpringBoot开发的微服务。当我探索时,许多Youtube视频和其他文档教程都使用dockerhub.com作为存储库保存已发布的图像。在这里我感到有点怀疑。我在这里补充说,

我可以使用Jenkins docker image build在kubernetes中部署docker映像而不使用dockerhub.com吗?Menas我不想在公共场所共享客户端代码。那么我可以不用dockerhub.com使用Jenkins吗 有人能澄清我的疑问吗?

您确实需要使用一些注册表-kubernetes需要一个注册表URL,以便能够将特定的图像提取并实例化为pod中的容器。为了避免图像本身被公开访问,您有两个选项:

使用公共注册处的业务帐户。您可以从Docker或其他服务(如Google或Quay)获得其中一个。当您使用业务帐户推送图像时,您将在公共注册表中获得一个私有空间,并且只有您的帐户凭据才能推送和拉取这些图像。在这种情况下,您的Kubernetes和Jenkins必须配置从您的帐户派生的凭据,才能将这些私有映像拉入集群。 在集群或非集群基础设施上运行私有注册表有多种类型的私有注册表,包括Docker、Atlassian和许多其他类型。这将使您的映像完全保留在您的基础架构上。折衷的办法是,您必须将其作为生产服务进行配置和运行,而且大多数适合生产使用的私有注册中心都有许多可移动部件用于可扩展的映像存储、索引、备份等。
您好,您可以将图像保存在私有注册表中,而不是使用dockerhub注册表。这都是关于坚持。正如你所知,詹金斯也是一个可以终止的播客。谢谢你,乔纳克·本顿先生。谢谢你的回复。我有注册的概念。我在考虑第二个选择。在我的群集上设置私有注册表。让我来探讨你的观点。但我还有一个疑问。如果图像是从私有注册表中提取的,那么为什么Jenkins使用代码库链接等GitHub、SVN等。。当我观看youtube视频时,这些人也在使用dockerhub凭据和github代码库链接。因为我们正在从注册表中提取图像。那么,为什么我们要再次定义代码存储库呢?我可能误解了这一点,但使用Jenkins从公共或私有代码存储库中提取源代码,在Jenkins worker上执行容器映像构建,然后将映像推送到私有基础设施上的映像注册中心是可以的。如果需要将源代码和映像构建保持私有,那么源代码存储库也应该是私有的,可以是私有的Github帐户,也可以是运行在k8s集群或私有基础设施上的源代码存储库。很高兴回答更多问题。我可以在安装kubernetes master和Jenkins的节点内为docker映像创建私人注册表吗?可以。您甚至可以将它作为一个容器来运行—以适当的存储配置为模块—因为注册表应用程序是打包的,并且可以在公共注册表上使用。从性能和可靠性的角度来看,在主机上运行它是否有意义取决于您的需求。