Тег, на который вы ссылаетесь, называется тегом манифеста (также «мультиплатформенный» или «мультиархивный» тег). Это специальный тег, который можно определить, который клиент Docker будет динамически преобразовывать в базовый образ, соответствующий платформе вашего хоста Docker. Таким образом, вы можете использовать тот же тег на компьютере Linux с процессором ARM, и Docker попытается преобразовать этот тег в изображение, предназначенное для платформы Linux ARM.
В вашем случае вы Вы запускаете это на Windows. Windows имеет определенные c требования относительно совместимости между Windows версией хоста Docker и Docker контейнера. Эти требования опубликованы здесь: https://docs.microsoft.com/virtualization/windowscontainers/deploy-containers/version-compatibility. Клиент Docker обрабатывает это, пытаясь преобразовать тег в изображение, соответствующее вашей версии хоста Windows. Ваша Windows сборочная версия - 10.0.17134
, то есть версия 1803. Эта версия вышла из строя (EOL) в ноябре прошлого года, поэтому вам, вероятно, следует обновить ее. Так как это EOL, тег 3.1
был обновлен, чтобы больше не предоставлять изображение, совместимое с 1803. И именно поэтому Docker выдает эту ошибку. Невозможно преобразовать тег манифеста в базовое изображение, которое соответствует вашей версии хоста, потому что нет связанного изображения.
Если вы действительно хотите, чтобы это работало, вы можете использовать тег 3.1-nanoserver-1803
вместо 3.1
. Этот тег определяется платформой c, а не тегом манифеста. Таким образом, Docker не выполняет никакого разрешения, как это происходит с тегом manifest; это просто тянет изображение непосредственно. Но не рекомендуется использовать этот тег, потому что это изображение не обслуживалось (1803 - EOL, помните). Что вам действительно нужно сделать, это обновить вашу хост-систему до поддерживаемой версии.