【发布时间】:2019-08-08 06:34:49
【问题描述】:
我想在 windows 10 pro 上为我的 windows 容器拉microsoft-windows-nanoserver。
我的环境:
Docker Desktop
Version: 2.0.0.3 (31259)
Channel: stable
Sha1: 8858db33c8692b69de9987a5d672798d778735b2
OS Name: Windows 10 Pro
Windows Edition: Professional
Windows Build Number: 17763
Client: Docker Engine - Community
Version: 18.09.2
API version: 1.39
Go version:go1.10.8
Git commit:6247962
Built: Sun Feb 10 04:12:31 2019
OS/Arch: windows/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.2
API version: 1.39 (minimum version 1.24)
Go version: go1.10.6
Git commit: 6247962
Built:Sun Feb 10 04:28:48 2019
OS/Arch: windows/amd64
Experimental: true
奇怪的是:
拉1803就ok了:
C:\>docker pull mcr.microsoft.com/windows/nanoserver:1803
1803: Pulling from windows/nanoserver
e46172273a4e: Pull complete
8f7ed89f9e35: Pull complete
Digest: sha256:bc5c1878a69c4538d55bc74e50b7dbafafff1a373120e624e8bad646a0a505dc
Status: Downloaded newer image for mcr.microsoft.com/windows/nanoserver:1803
但是拉1903不行:
C:\>docker pull mcr.microsoft.com/windows/nanoserver:1903
1903: Pulling from windows/nanoserver
no matching manifest for unknown in the manifest list entries
我注意到它的 dockerhub 中有一张桌子:
Tags Architecture Dockerfile OsVersion CreatedTime LastUpdatedTime
1903 multiarch No Dockerfile 10.0.18362.239 05/21/2019 18:01:07 07/09/2019 18:29:39
1803 multiarch No Dockerfile 10.0.17134.885 10/05/2018 22:06:26 07/09/2019 17:41:59
OsVersion 是指docker host os's version 还是my contaner's distrubtion's version?你可以看到我的windows主机操作系统是17763,这可能是我无法拉动1903的原因还是其他原因?
另外,如果上面的猜测是正确的,那么为什么会发生这种情况?据我所知,容器只是共享主机的内核,不应该关心操作系统版本,同时windows10上的docker for windows使用hyper-v,为什么它关心我的windows操作系统版本?
如果我想使用新版本的容器,我真的不想一次又一次地升级我的操作系统......我希望我的猜测是错误的,我错过了什么?
【问题讨论】: