如何使用Azure API启动容器实例?

slf*_*slf 13 azure node.js gitlab gitlab-ci azure-container-service

我在gitlab中有一个容器构建,并使用gitlab自定义注册表进行注册.在这个容器里面是一个运行很长时间的命令.我想以某种方式将此容器部署到azure,并且只根据管理api服务的需要在新容器实例中启动这个长时间运行的进程.我不希望容器一直运行,只是运行命令所花费的时间.

我认为这个admin api可能是Azure"App Services"下托管的经典http rest api服务,或者可能使用Azure的新"功能应用程序"功能.

在我的研究中,我发现使用azure cli命令,我可以像这样启动一个容器:

az container create \
    --resource-group myResourceGroup \
    --name mycontainer2 \
    --image microsoft/aci-wordcount:latest \
    --restart-policy OnFailure \
    --environment-variables NumWords=5 MinLength=8
Run Code Online (Sandbox Code Playgroud)

https://docs.microsoft.com/en-us/azure/container-instances/container-instances-environment-variables

我想从admin api执行此操作,最好使用看起来像我这里的官方Azure npm包的内容:

https://www.npmjs.com/package/azure

理想情况下,创建和启动实例将是一个单独的命令,能够在容器启动时设置环境变量就像这个例子对我来说很重要.我对将我的所有代码都移到Azure中不感兴趣,我想继续使用gitlab作为源代码和容器注册表,但如果有一些原因我必须切换到使用Azure容器注册表,我需要一种方法来不知何故使用gitlab ci yaml在那里移动容器注册.

在我的所有搜索中,我找不到任何方法来做到这一点,但我找到的最接近的文档在这里:

https://docs.microsoft.com/en-us/javascript/api/azure-arm-containerservice/containerserviceclient?view=azure-node-latest

slf*_*slf 1

目前还没有办法从 api 正式做到这一点,也许将来会有