我想知道是否可以通过某种方式在Azure云平台上实现以下目标:
之所以需要启动和停止Docker容器,是为了降低成本,因为工作量很大,需要一个使用多个CPU内核和大量RAM的实例。
最佳答案
在“函数”中,可以使用C#中的Microsoft.Azure.Management.ContainerInstance命名空间在ACI中启动和停止容器。这是link to the Nuget package和我发现的示例:
var containerGroup = azure.ContainerGroups.Define(containerGroupName)
.WithRegion(azureRegion)
.WithExistingResourceGroup(resourceGroupName)
.WithLinux()
.WithPublicImageRegistryOnly()
.WithoutVolume()
.DefineContainerInstance(containerGroupName)
.WithImage(containerImage)
.WithExternalTcpPort(80)
.WithCpuCoreCount(1.0)
.WithMemorySizeInGB(1)
.Attach()
.WithDnsPrefix(containerGroupName)
.Create();
有很多方法可以实现您的目标。可以使用Logic App来使用ACI connector在ACI中启动和停止容器,而不是使用功能。你可能会想
与此类似的工作流程:
您当然可以并行运行多个Logic App。
关于c# - 根据输入从Azure功能启动和停止Docker容器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60016663/