在运行Windows 10 1803的计算机上拉Windows / Servercore:1809

时间:2019-08-23 12:02:28

标签: docker docker-for-windows

我们有一个运行Windows Server 2019 Standard版本1809(操作系统内部版本17763.678)的内部版本服务器。我们正在此服务器上运行旧的docker映像,并且它们使用Windows Server 2016作为其基本映像。因此,docker容器在Hyper-V模式下运行,这使得构建时间比以前减少了约5倍。

有两件事使更新这些图像有些复杂:

  • 服务器未连接到互联网
  • 我的开发计算机正在运行Windows 10企业版1803

我知道我不能使用window / servercore:1809作为基础映像在开发机器上构建docker映像,因为主机系统必须与容器OS相同或更高。

作为一种解决方法,我认为我可以直接在服务器上构建新映像。我只需要将所需的所有文件传输到服务器,然后将其推入基础映像窗口/ servercore:1809。当我尝试拉基本图像时,这是一个问题:

> mcr.microsoft.com/windows/servercore:1809
1809: Pulling from windows/servercore
no matching manifest for unknown in the manifest list entries

当我将1809更改为1803时,该命令运行正常。

是否有某种方法可以将不兼容的docker映像拉到我的计算机上,然后将其推到可以正常工作的计算机上?我发现docker pull具有实验功能{{1 }},但这似乎仅用于在Windows上拉Linux映像,反之亦然。

我们很可能会把我们的开发机器升级到1809年,这将为我解决问题。我仍然想知道是否有解决方案。


我还检查了清单实际上在说什么。如果我们首先为docker cli启用了实验性功能,请编辑$ HOME / .docker / config.json文件并添加以下行:

--platform

我们可以像这样检查图像的清单:

"experimental": "enabled"

我认为这是告诉docker映像所需的最低版本的信息:

docker manifest inspect -v mcr.microsoft.com/windows/servercore:1809

如果我对1803图像执行相同操作,则会显示"platform": { "architecture": "amd64", "os": "windows", "os.version": "10.0.17763.678" } ,与我的计算机上的版本匹配。

0 个答案:

没有答案