You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过Bicep部署修改Azure Container App的入口流量设置

解决Azure Container App“接受来自任何位置的流量”无法选中及连接失败问题

问题根源

当Container App环境部署到自定义VNet时,默认会启用网络访问限制,同时基础设施子网的网络策略配置不符合要求,导致Ingress的全局访问选项无法激活,进而引发外部连接失败。

具体修改方案

1. 修正VNet子网配置

Container App环境的基础设施子网要求禁用privateEndpointNetworkPolicies和privateLinkServiceNetworkPolicies,否则会影响Ingress的正常对外暴露。修改后的VNet Bicep代码:

resource vnet 'Microsoft.Network/virtualNetworks@2021-08-01' = {
  name: vnetName
  location: location
  properties: {
    addressSpace: {
      addressPrefixes: [
        vnetAddressPrefix
      ]
    }
    subnets: [
      {
        name: subnetName
        properties: {
          privateEndpointNetworkPolicies: 'Disabled'
          privateLinkServiceNetworkPolicies: 'Disabled'
          addressPrefix: vnetAddressPrefix
        }
      }
    ]
  }
}

2. 配置Ingress允许全局访问

在Container App的Ingress配置中添加allowedIpRanges: ['0.0.0.0/0'],这对应门户里的“接受来自任何位置的流量”选项,同时确保external: true保持开启。修改后的Container App Bicep代码:

resource containerApp 'Microsoft.App/containerApps@2022-10-01' = {
  name: containerAppName
  location: location
  properties: {
    environmentId: appEnv.id
    configuration: {
      secrets: [
        {
          name: 'password'
          value: '...'
        }
      ]      
      registries: [
        {
          server: '...'
          username: '...'
          passwordSecretRef: 'password'
        } 
      ]
      ingress: {
        external: true
        targetPort: 7687
        exposedPort: 7687
        transport: 'tcp'
        allowedIpRanges: ['0.0.0.0/0'] // 新增:允许所有IP访问
      }
    }
    template: {
      containers: [
        {
          image: '...'
          name: 'neo4j'
          env: []
          resources: {
            cpu: 2
            memory: '4Gi'
          }
        }
      ]
      scale: {
        minReplicas: 1
        maxReplicas: 1
      }
    }
  }
  dependsOn: [
    appEnv // 修正依赖:确保环境先创建完成
  ]
}

3. 补充说明

  • Container App环境的vnetConfiguration.internal设为false是正确的,确保环境支持外部Ingress。
  • 部署修改后的脚本后,需要等待Container App环境和应用完全更新(通常5-10分钟),再测试Neo4j连接。
  • 由于是POC阶段,0.0.0.0/0允许所有外部流量,生产环境需根据实际需求限制IP范围。

内容的提问来源于stack exchange,提问作者Bart Kiers

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 17:17:37