我无法从 azure ACR 中提取图像

I can´t pull image from azure ACR

这是我第一次使用 azure,我在 DevOps 中创建了一个管道,它从 docker 文件创建图像并将它们推送到我的 ACR。然后,我使用 docker-compose 创建了一个多容器 Web 应用程序,并将我的 ACR 连接到该 Web 应用程序。但是网络应用程序无法从 ACR 中提取图像。我不知道我做错了什么。

当我尝试在多容器 Web 应用程序中从 ACR 中提取图像时出现错误。

错误:

2019-11-28 19:27:46.755 INFO  - Pulling image: [registry-name].azurecr.io/server
2019-11-28 19:27:46.921 ERROR - DockerApiException: Docker API responded with status code=NotFound, response={"message":"manifest for [registry-name].azurecr.io/server:latest not found: manifest unknown: manifest unknown"}

Docker-编写配置:

version: "3"

services:
  # SERVER CONTAINER

  server:
    image: [registry-name].azurecr.io/server
    expose:
      - 4000
    ports:
      - 4000:4000
    command: node src/server.js
    restart: always

  # CLIENT CONTAINER

  client:
    image: [registry-name].azurecr.io/client
    ports:
      - "80:80"
      - "443:443"
    links:
      - server
    depends_on:
      - server
    restart: unless-stopped

首先报错是找不到带有latest标签的[registry-name].azurecr.io/server镜像。所以如果你的图片确实存在,那么就是标签的问题了。

如果你的镜像没有添加tag,一般默认会拉取最新的tag。日志显示如下:

不过给图片加个特殊标签总比没有标签好。如果你想从ACR获取最新的镜像,那么在推送镜像的时候总是添加最新的标签,当你使用该镜像时也是如此。