由于DockerHub将在11月1日实施速率限制,我们可能会告诉我们的工程师创建(免费) DockerHub帐户,以便每个人都能享受每6小时200次拉动。
然而,我们担心工程师可能会以某种方式意外地将图像从他们的笔记本电脑推送到DockerHub。
有没有什么方法可以阻止我们的开发人员意外地推送到DockerHub?
发布于 2020-10-08 01:46:46
Docker可能会在速率限制开始之前提供创建更多受限令牌的能力,或者仅拉取,或者可能仅限于特定的回购。对于在云中运行构建但不想提供完全访问权限的CI用户,需要此功能。
否则,我建议不要使用可以推送到Docker Hub的东西来标记您的本地镜像。图像引用包括存储库名称,并且可以使用注册表作为前缀。如果他们使用本地注册中心名称进行标记,或者指定一个他们无权推送到的存储库,那么他们将不会向Hub推送任何内容。
更好的方法是创建一个本地注册表,这样就不需要从集线器获取数据了。镜像您的开发人员所需的基础映像,并让他们根据您的内部注册表执行构建。有很多docker注册表的实现,包括Docker's image或用于企业环境,已经在Harbor Project中进行了扩展,这是CNCF的一部分。两者都是免费的,并且都是开源的。
作为一种极端措施,您可以阻止在所有开发人员用于访问互联网的http代理上运行任何POST /v2/*/blobs/upload (参见registry API spec)的能力,但您可能会发现这违反了许多合法的用例。
https://stackoverflow.com/questions/64249355
复制相似问题