在Azure Web服务身份验证问题上运行公共和私有映像

时间:2019-11-21 14:28:06

标签: azure docker docker-compose azure-web-app-service

当运行来自azure容器注册表的私有容器注册表图像以及来自docker.io“ docker:latest”的公共图像的混合物时,却在docker.io上遇到身份验证问题

Docker compose file

    image: docker:latest

问题是我只能在azure门户上登录其中一个,是否可以同时登录到两者?还是我打算在开发项目中创建一个新的docker文件,它将文件提取并存储在我的Azure容器注册表中?

错误日志:

  

2019-11-21 14:07:32.273信息-拉图像:docker:latest

     

2019-11-21 14:07:32.959错误-DockerApiException:Docker API响应,状态码= InternalServerError,响应= {“ message”:“获取https://registry-1.docker.io/v2/library/docker/manifests/latest:未授权:错误的用户名或密码”} < / p>      

2019-11-21 14:07:32.959错误-拉docker镜像docker:latest失败:

     

2019-11-21 14:07:32.959信息-从Docker集线器中提取图像:库/ docker:最新

     

2019-11-21 14:07:34.061信息-最新从库/泊坞窗拉出

     

2019-11-21 14:07:34.431信息-摘要:sha256:813da205ebebb2973c7a8ecac81c49e0510e0de22bff954a0455b582a572eda2

     

2019-11-21 14:07:34.431信息-状态:docker:latest的图像是最新的

     

2019-11-21 14:07:34.437信息-拉取图像成功,花费时间:0分钟1秒

     

2019-11-21 14:07:34.464信息-网站的启动容器

1 个答案:

答案 0 :(得分:0)

不幸的是,Azure Web App上的多个容器当前仅支持一个注册表。这意味着无论ACR还是Docker集线器,所有映像都必须属于一个注册表。我找到的文档here

  

多容器部署中的所有映像都必须使用相同的映像   Docker注册表。换句话说,您不能使用Azure容器   一个映像的注册表(ACR),另一个注册表的Docker Hub。   另外,如果您使用的是ACR,则所有图像都必须位于同一ACR服务器上。

因此,我建议您可以将所有将要使用的图像推送到ACR,然后仅使用它。

相关问题