猿问

使用 C# 通过 VNet 创建 Azure 容器实例

我有以下 powershell 命令创建一个包含 1 个容器实例的 Azure 容器组:


az container create \

-g $(ResourceGroup) \

--name $(ContainerName) \

--image $(DockerImage) \

--cpu 2 --memory 8 \

--restart-policy OnFailure \

--vnet $(VNet) \

--subnet $(VNetSubnet) \

--registry-username $(RepositoryUserName) \

--registry-password $(RepositoryPassword)

我正在尝试根据此示例代码使用 .NET 客户端库执行相同的操作:


var containerGroup = _azure.ContainerGroups

          .Define(agentName) 

          .WithRegion(resourceGroup.Region)

          .WithExistingResourceGroup(resourceGroup.Name)

          .WithLinux()

          .WithPrivateImageRegistry("xxx.azurecr.io", "xxx", "xxx")

          .WithoutVolume()

          .DefineContainerInstance(agentName)

              .WithImage(args.DockerImageName)

              .WithExternalTcpPort(80)

              .WithCpuCoreCount(args.CpuCoreCount)

              .WithMemorySizeInGB(args.MemorySizeInGB)

          .Attach()

          .WithTags(tags)

          .WithRestartPolicy(ContainerGroupRestartPolicy.Always)

          .CreateAsync()

但是我找不到设置 vnet 和子网的方法。如何使用 C# 实现?


DIEA
浏览 94回答 2
2回答

呼啦一阵风

不确定,但似乎你不能通过 C# 做到这一点。也许是因为它只是Azure Container Instance的预览版。您可以在完整的 Azure 容器实例服务容器组定义中看到您可以定义的所有内容。或者,您可以通过 Azure REST API 创建它。请参阅容器组 - 创建或更新,您可以配置属性 networkProfile 以在 vnet 中创建容器组。

犯罪嫌疑人X

同时支持 VNET添加 WithNetworkProfilevar containerGroup = _azure.ContainerGroups          .Define(agentName)           .WithRegion(resourceGroup.Region)          .WithExistingResourceGroup(resourceGroup.Name)          .WithLinux()          .WithPrivateImageRegistry("xxx.azurecr.io", "xxx", "xxx")          .WithoutVolume()          .DefineContainerInstance(agentName)              .WithImage(args.DockerImageName)              .WithExternalTcpPort(80)              .WithCpuCoreCount(args.CpuCoreCount)              .WithMemorySizeInGB(args.MemorySizeInGB)          .Attach()          .WithTags(tags)          .WithRestartPolicy(ContainerGroupRestartPolicy.Always)          .WithNetworkProfile(subscriptionId,resourceGroup,"aci-network-profile-vnettest-containersubnet")          .CreateAsync()可以使用例如 Azure CLI 获取配置文件az network profile list
随时随地看视频慕课网APP
我要回答