为多个容器创建azure webapp时传递azure容器注册表凭据

问题描述

我正在使用CLI创建azure webapp(多容器应用)。我的Docker映像位于Azure容器注册表(ACR)中。如何将注册表凭据传递给它或传递一些标志,使其识别出需要从ACR中提取图像。

这是从我的linux机器上运行的命令(以az登录登录

az webapp create --resource-group RishiCTS --plan rishi-kpi --name rishi-models --multicontainer-config-type compose --multicontainer-config-file docker-compose-models.yml

更新:在azure门户中,我可以传递docker-compose并将图像源选择为ACR,但这仅从docker-compose启动第一个服务。

解决方法

您只需要像这样在YAML中设置图片:

image: myregistry.azurecr.io/image:tag

然后,Web应用程序将从容器注册表中提取图像。您可以看一下example for multiple containers。然后,您需要在ACR的凭证中添加环境变量:

  • DOCKER_REGISTRY_SERVER_USERNAME-ACR服务器的用户名。
  • DOCKER_REGISTRY_SERVER_URL-ACR服务器的完整URL。 (对于 例如https://my-server.azurecr.io。)
  • DOCKER_REGISTRY_SERVER_PASSWORD-ACR服务器的密码。

更多详细信息here

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...