如何让Azure App Service稳定连接私有Azure Container Instance?
稳定连接私有Azure Container Instance的方案
方案1:使用ACI的静态私有IP
创建或更新ACI时指定静态私有IP,确保重部署(非删除重建)时IP保持不变:
- Azure CLI创建示例:
注意:静态IP必须属于ACI所在子网的可用IP范围且未被占用,现有ACI也可通过az container create \ --name my-aci \ --resource-group my-rg \ --image nginx \ --vnet my-vnet \ --subnet my-subnet \ --ip-address private \ --private-ip-address 10.0.0.5az container update命令指定静态IP。
方案2:Private DNS Zone + ACI自动注册
配置自动注册后,ACI重部署时DNS记录会自动更新,无需手动修改:
- 创建与虚拟网络关联的Private DNS Zone(例如
privatelink.azurecontainerinstance.net) - 在虚拟网络的DNS设置中,开启该Zone的自动注册功能
- 创建ACI时指定
--dns-name-label参数(区域内唯一):
App Service可通过az container create \ --name my-aci \ --resource-group my-rg \ --image nginx \ --vnet my-vnet \ --subnet my-subnet \ --ip-address private \ --dns-name-label my-aci-dnsmy-aci-dns.privatelink.azurecontainerinstance.net稳定访问ACI。
方案3:内部Azure Load Balancer
适合多ACI实例或需要负载管理的场景:
- 创建内部LB并配置静态前端私有IP
- 将ACI所在子网关联到LB的后端池
- 后续ACI重部署或新增实例时,自动加入后端池,App Service通过LB的静态IP或关联的Private DNS记录访问
内容的提问来源于stack exchange,提问作者Ricardo
相关产品推荐
相关产品推荐

