Создание экземпляра контейнера Azure с виртуальной сетью с помощью C #

У меня есть следующая команда powershell, которая создает группу контейнеров Azure с 1 экземпляром контейнера:

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 #?


person Rui Jarimba    schedule 02.04.2019    source источник
comment
Я бы сказал, что вам нужно использовать сетевой профиль: docs.microsoft.com/en-us/dotnet/api/. docs.microsoft.com/en-us/dotnet/api/   -  person 4c74356b41    schedule 02.04.2019
comment
Я до сих пор не понимаю, как настроить сетевой профиль с помощью свободного API, у меня сложилось впечатление, что это невозможно сделать с текущей версией, но в любом случае спасибо @ 4c74356b41.   -  person Rui Jarimba    schedule 03.04.2019
comment
да, я не использовал c # sdk, так что ничего не могу поделать   -  person 4c74356b41    schedule 03.04.2019
comment
Еще обновления?   -  person Charles Xu    schedule 03.04.2019
comment
осталось два года - все еще невозможно (c) Microsoft   -  person cortisol    schedule 11.06.2021
comment
@cortisol К вашему сведению, мы перестали использовать ACI, мы переместили все наши контейнеры в AKS.   -  person Rui Jarimba    schedule 11.06.2021


Ответы (1)


Не уверен, но, похоже, вы не можете сделать это через C #. Возможно, потому что это всего лишь предварительная версия Экземпляр контейнера Azure. Вы можете увидеть все, что вы можете определить, в Полное определение группы контейнеров службы экземпляра контейнера Azure.

Или вы можете создать его через Azure REST API. См. Группы контейнеров - создание или обновление и вы можете настроить свойство networkProfile, чтобы сделать группу контейнеров во vnet.

person Charles Xu    schedule 03.04.2019
comment
Спасибо @ charles-xu, похоже, у меня нет другого выхода, кроме использования Azure REST API. - person Rui Jarimba; 03.04.2019
comment
Я все еще изучаю другие возможности, прежде чем принять какой-либо ответ, но в любом случае спасибо за ваше объяснение - person Rui Jarimba; 04.04.2019