Windows nanooserver可以在Linux docker中运行吗?

前端之家收集整理的这篇文章主要介绍了Windows nanooserver可以在Linux docker中运行吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
https://msdn.microsoft.com/en-us/virtualization/windowscontainers/deployment/deployment_nano讨论在Windows下运行nanoserver docker镜像:

docker pull microsoft/nanoserver

这是否意味着我们应该能够在Docker运行的任何地方运行nanoserver(例如Linux)?

容器在共享操作系统上提供进程隔离,而不是在VM上共享硬件上的操作系统隔离.由于OS是共享的,因此主机OS需要能够运行所需的二进制文件.您将在docker引擎的体系结构和要运行的映像的体系结构中看到这一点,它们必须兼容:
$docker system info --format '{{.OSType}} {{.Architecture}}'
linux x86_64

$docker image inspect busyBox --format '{{.Os}} {{.Architecture}}'
linux amd64

如果您尝试运行与主机不兼容的体系结构,则会出现错误,因为内核无法识别二进制格式:

$docker image pull --platform arm64 busyBox:latest
latest: Pulling from library/busyBox
acafde7ce2e7: Pull complete
Digest: sha256:2a03a6059f21e150ae84b0973863609494aad70f0a80eaeb64bddd8d92465812
Status: Downloaded newer image for busyBox:latest

$docker run -it --rm busyBox:latest echo hello
standard_init_linux.go:190: exec user process caused "no such file or directory"

Docker的桌面版本和Docker的Windows Server版本包括一个运行Linux容器的Linux VM(Linux容器是主要的容器环境,所以Docker使用Linuxkit实现这一点,以简化开发人员的工作流程).对于Windows,引擎中有一个开关用于使用Linux VM或运行本机Windows容器.

但是,Docker没有用于Windows的嵌入式VM在Linux主机上运行其二进制文件(因为Windows不是开源的并且需要许可),因此运行Windows本机容器的唯一方法是在Windows主机上.

原文链接:https://www.f2er.com/windows/367757.html

猜你在找的Windows相关文章