当前位置: 首页 > 知识库问答 >
问题:

无法创建Azure容器实例(Windows)

谷奕
2023-03-14

我创建了一个 Azure DevOps 管道,以使用以下脚本使用 Azure CLI 任务创建 Azure 容器实例 (Windows) 的新实例:

az container create \
-g $(BuildAgent.ResourceGroup) \
--name $(BuildAgent.ContainerName) \
--image $(BuildAgent.DockerImage):$(BuildAgent.DockerImageVersion) \
--cpu $(BuildAgent.Cpu) \
--memory $(BuildAgent.Memory) \
--os-type $(BuildAgent.OsType) \
--restart-policy OnFailure \
--vnet $(BuildAgent.VNet) \
--subnet $(BuildAgent.VNetSubnet) \
--registry-username $(BuildAgent.RepositoryUserName) \
--registry-password $(BuildAgent.RepositoryPassword) \
-e \
VSTS_ACCOUNT=$(BuildAgent.VstsAccount) \
VSTS_POOL=$(BuildAgent.AgentPool) \
VSTS_AGENT='$(BuildAgent.ContainerName)' \
--secure-environment-variables \
VSTS_TOKEN='$(BuildAgent.AccessToken)'

任务失败,出现以下错误:

请求的资源目前在“西欧”位置不可用。请使用其他资源请求或在其他位置重试。请求的资源:“4”CPU“8”GB内存“Windows”操作系统虚拟网络

支持 Docker 文件中的基本映像(我认为):

FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2016

一些说明:

  • 资源组已存在
  • 我尝试过使用不同数量的核心/内存(例如 2 个内核/8GB 或 4 个内核/16GB)
  • 我有一个类似的管道,它使用相同的资源组和相同的Azure容器注册表创建一个正常工作的Linux容器
  • VNet 和子网与创建 Linux 容器的管道中使用的 VNet 和子网相同

我错过了什么?

共有1个答案

何辰沛
2023-03-14

在仔细研究Azure区域中Azure容器实例的资源可用性后,我意识到不可能使用vnet/subnet创建Windows容器实例。

根据该页面中的第 1 个表,可以在西欧创建 Windows 容器实例:

但是,向下滚动到可用性-虚拟网络部署部分,我可以看到任何区域都没有对Windows容器的虚拟网络支持:

 类似资料:
  • 我尝试在英国西部地区创建一个Azure服务容器。我经历了所有的步骤没有问题,但是一旦我点击创建后,我遇到了几分钟: 所提供的位置ukWest不适用于资源类型Microsoft。容器服务/容器服务。资源类型的可用区域列表是“日本东部、中部、东部2、日本西部、东部、南部、澳大利亚东部、澳大利亚东部、巴西南部、南部、西部、北部、西部、西部、北部、北部、北部、北部、东部”。 好吧,我意识到这是我的错误,于

  • 我一直在尝试在我的MSDN Azure订阅中创建一个spot实例标准D2s v3(2 vCPU,8 GiB内存)VM。我试过EastUS、EastUS 2和WestUS地区,结果都是一样的。 资源/订阅/xxxxx/resourceGroup/dnd/提供者/Microsoft的请求大小。计算/虚拟机/windowsvm'目前无法在位置'eastus2'区域"中订阅'xxxxx'。请尝试其他大小或

  • 每次我尝试创建一个新的计算机时,它都会说创建失败了,所以我无法工作。我的区域是francecentral,我尝试了不同大小的虚拟机

  • 我试图创建一个容器实例作为连接到现有VNET和子网的专用网络。我昨天设法让它运行,但是更新或刷新映像非常慢。我正在dockerhub上使用私有映像。 现在,当我尝试使用相同的VNET、子网和映像创建ACI时,我会收到错误: 请求的资源目前在“westeurope”位置不可用。请使用其他资源请求或在其他位置重试。请求的资源:“1”CPU“1.5”GB内存“Linux”操作系统虚拟网络单击此处获取详细

  • 我有一个完整的CLI命令来创建Azure容器实例。从该命令创建实例效果良好。现在,我正在考虑将所有这些命令参数放置在yaml文件中。 我已经检查了以下帮助我启动的链接:将Azure文件卷装载到容器 我的问题如下: 1-在我的命令中,我需要从Azure容器注册表中获取图像,我们需要为其传递服务器名称和密码。如何在yaml文件中定义此条目? 2-我有一套要设置的环境,我应该用哪种语法设置它们? 谢谢你