为什么微软不提供与Windows主机版本10.0.22621.1992匹配的Docker镜像

i5desfxk  于 2023-08-03  发布在  Docker
关注(0)|答案(1)|浏览(111)

上下文

我正在使用具有以下版本的Windows 11专业版计算机:

C:\Users>ver
Microsoft Windows [Version 10.0.22621.1992]

字符串
我正在Windows容器模式下使用 Docker Desktop,我想使用以下命令启动一个带有--isolation=process的Windows容器

docker run -it --rm --name container_name -v .:c:/localroot --isolation=process image_name

问题

使用进程隔离模式时,主机操作系统版本与容器映像操作系统版本匹配至关重要。我在Docker Hub上搜索过,特别是Microsoft Windows page,但只能找到Windows 10镜像。

**Microsoft没有发布与Windows主机版本10.0.22621.1992对应的Docker镜像是否有特定原因?**另外,有没有人知道一个合适的图像或解决方法?

Docker为什么选择进程隔离模式

源代码驻留在主机上,我的目标是在容器中编译它。我在构建过程中使用了scons,这是一个I/O密集型的过程。通过广泛的测试,我观察到当容器在hyperv隔离模式下运行时,构建过程要么非常缓慢,要么偶尔会完全失败。通过使用进程隔离模式,容器和主机共享同一内核。我相信这种方法可以提高构建效率。
谢谢你的好意

8yoxcaq7

8yoxcaq71#

10.0.22621.1992是12天前的W11 22 H2。可能还是有点太新鲜了。
其次,通常为Microsoft Windows Server containers提供容器,如microsoft/Windows-Containers /issue 117中所讨论的
另一种方法是使用Windows Server 2022 image,如containerd/containerd PR 8137中所要求的
Windows 11客户端支持运行10.0.20348及更高版本的进程隔离容器。或者换句话说,Windows 11客户端可以运行Windows Server 2022容器,即使它们的内部版本号不匹配。Docker引擎已经支持这种场景;此更改更新了containerd,使其也支持此场景。
容器/OS版本兼容性页面记录了客户端OS和服务器OS版本之间的这种兼容性级别。
但在您的情况下,主机操作系统版本不会与容器映像操作系统版本完全匹配

相关问题