![](/img/trans.png)
[英]Getting : no matching manifest for windows/amd64 10.0.18362 in the manifest list entries
[英]no matching manifest for windows/amd64 10.0.17134 in the manifest list entries
當我運行命令“docker pull mcr.microsoft.com/dotnet/core/aspnet:3.1”為 docker 拉取 dotnet 核心時,我會收到以下錯誤消息。
docker pull mcr.microsoft.com/dotnet/core/aspnet:3.1
3.1: Pulling from dotnet/core/aspnet
**no matching manifest for windows/amd64 10.0.17134 in the manifest list entries**
我的操作系統是 Windows 10 企業版。 我在 docker 中嘗試了“實驗性”設置,但沒有奏效。
您引用的標簽稱為清單標簽(也稱為“多平台”或“多架構”標簽)。 這是一個可以定義的特殊標簽,Docker 客戶端將動態解析為與 Docker 主機平台匹配的底層映像。 因此,您可以在配備 ARM 處理器的 Linux 機器上使用相同的標簽,Docker 會嘗試將該標簽解析為適用於 Linux ARM 平台的映像。
在您的情況下,您正在 Windows 上運行它。 Windows 對 Docker 主機和 Docker 容器的 Windows 版本之間的兼容性有特定要求。 這些要求發布在此處: https : //docs.microsoft.com/virtualization/windowscontainers/deploy-containers/version-compatibility 。 Docker 客戶端通過嘗試將標記解析為與您的 Windows 主機版本匹配的映像來處理此問題。 您的 Windows 構建版本是10.0.17134
,即版本 1803。該版本於去年 11 月停產 (EOL),因此您可能應該對其進行更新。 因為是 EOL, 3.1
標簽已經更新,不再提供與 1803 兼容的鏡像。這就是 Docker 給你這個錯誤的原因。 它無法將清單標記解析為與您的主機版本匹配的基礎圖像,因為沒有關聯的圖像。
如果你真的想讓它工作,你可以使用3.1-nanoserver-1803
標簽而不是3.1
。 該標簽是特定於平台的,而不是清單標簽。 所以 Docker 不會像使用 manifest 標簽那樣做任何解析; 它只是直接拉圖像。 但不建議使用該標簽,因為該映像尚未得到服務(請記住,1803 是 EOL)。 您真正應該做的是將您的主機操作系統升級到受支持的版本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.