首页 文章

限制对gitlab容器注册表的访问

提问于
浏览
1

我希望能够让用户将docker文件和代码一起推送到gitlab并让gitlab构建映像,然后由经过身份验证的项目用户提取 .

问题是,我想确保用户不要将docker镜像直接推送到gitlab容器注册表,以便我们可以查看docker文件和控件,并确保Dockefiles使用Redhat only注册表从中提取内容 .

我们如何防止用户将自己构建的图像推送到gitlab?换句话说,我们如何确保gitlab项目的容器注册表中的docker镜像是由dockerfile的gitlab构建的,而不是项目用户direclty从其他地方推送的那个?

1 回答

  • 1

    我现在没有't think it' . 如果选中gitlab's permissions model,您将看到用户访问级别决定了您可以在容器注册表中执行的操作:

    • 读取权限可用作Reporter

    • 更新权限可用作开发人员

    如果您的用户是开发人员,那么他们将能够将图像推送到注册表 . 如果要将其限制为gitlab-ci版本,则需要使用protected branches并将用户限制为Reporter访问级别(可能不是您想要的) .

    另一个有点复杂的选择是设置第二个项目,该项目用作图像的源,并将其构建设置配置为从第一个项目受保护的分支中提取 . 在第一个项目中提交到受保护的分支总是必须进行审查,并且将从第二个项目中提取docker镜像 .

相关问题