由于某些原因,我们必须构建基于Windows的docker。从here开始,我们知道可以建立4种基本图像。
我确定与物联网无关,因此不包括Windows / iotcore。虽然不确定剩下的三个。从大小的角度来看(nanoserver 在它们之间进行选择的标准是什么? 很显然,我缺少一些dll来启动服务,而Dependencywalker似乎也无法在基本映像1和2中运行。有人在识别该丢失的DLL方面有经验吗?这样,仍然可以对丢失的dll使用最小化基本映像。 进度更新:
我的服务成功运行#3(Windows基本映像)。但是docker映像大小非常大。见下文。这使得选择很重要。 mcr.microsoft.com/windows/nanoserver 10.0.14393.2430 9fd35fc2a361 15个月前1.14GB
mcr.microsoft.com/windows/servercore 1809-amd64 733821d00bd5 5天前4.81GB
mcr.microsoft.com/windows 1809-amd64 57e56a07cc8a 6天前12GB 非常感谢。
答案 0 :(得分:0)
您现在可能已经前进了,但实际上
IOT -很小,适用于建筑商和制造商委员会。
Nanoserver =最小。运行netcore应用。您必须使用多阶段构建来构建它。从我看到的工作出发,它已经相当先进了。
ServerCore =中间。无GUI的Windows服务器。是最常见的默认基本映像。您没有说什么服务没有运行,但是包含应用程序兼容性FOD可能会解决该问题而不增加大小。使用最新的容器。我认为是1903年。
https://docs.microsoft.com/en-us/windows-server/get-started-19/install-fod-19
Windows =最胖,整个爆炸