使用@azure/arm容器实例在ACI上生成容器



我正在处理数据微服务。我已经将这个微服务固定化了,现在我想部署它。为了实现它,我正在尝试使用node.js.中编写的Azure函数来管理Azure容器实例中的容器

我想测试的第一件事是在一个组中生成容器。我的想法是:

const oldConfig = await client.containerGroups.get(
'resourceGroup',
'resourceName'
);
const response = await client.containerGroups.createOrUpdate(
'resourceGroup',
'resourceName',
{
osType: oldConfig.osType,
containers: [
...oldConfig.containers,
{
name: 'test',
image: 'hello-world',
resources: {
requests: {
memoryInGB: 1,
cpu: 1,
},
},
},
],
}
);

我添加了osType,因为文档和接口说这是必需的,但当我这样做时,我收到错误"要更新osType,你需要删除并创建组容器";。删除osType时,请求成功,但ACI不会更改。我不能在每个新容器上重新创建整个组,因为我希望它们自己处理作业并终止。

并非所有属性都支持更新。请参阅以下详细信息:

并非所有容器组属性都可以更新。例如,到更改容器的重新启动策略,必须首先删除容器组,然后再次创建它。

对这些属性的更改要求在重新部署:

操作系统类型CPU、内存或GPU资源重新启动策略网络配置文件

因此,在更新osType之后,容器组不会更改。您需要删除容器组并使用更改创建它。获取有关更新的更多详细信息。

最新更新