我在 Azure DevOps 中有一个管道,它应该构建 Docker 镜像并将其推送到 Azure 容器注册表。因此,我有一个服务连接(类型:docker 注册表),以便授权管道推送。如果我删除容器注册表中的网络限制,一切都会正常。
一旦我想限制网络访问,它就不再起作用,并且我在 docker 任务的管道输出中得到“拒绝”。我还尝试添加 Azure DevOps IP 范围(13.107.43.0/24、13.107.42.0/24、13.107.9.0/24、13.107.6.0/24)。
知道出了什么问题吗?
最佳答案
实际上,当您使用管道时,所有任务都在代理中运行。还有代理商的网络,你可以看看here 。如您所见,您需要允许代理的 IP 地址,并且 IP 范围随时间而变化。每周您都需要在组织区域的防火墙规则中添加新的 IP 地址。所以有点麻烦。
与控制访问IP地址相比,我建议您控制ACR的凭证的权限。如果一个人没有足够的权限,即使他可以访问ACR,他也不能做需要特殊许可的事情。 Here是有关 oo ACR 权限的详细信息。
关于Azure DevOps Pipeline - 构建 Docker 镜像并将其推送到具有受限网络访问权限的 Azure 容器注册表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63380084/