Azure DevOps Pipeline-使用受限的网络访问权限将Docker映像生成并推送到Azure容器注册表

问题描述

我在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是有关ACR权限的详细信息。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...