我一直在看Docker,并且我已经了解到,与VM不同的是,docker使用主机操作系统的内核。为什么要求基本映像必须是OS。为什么docker无法使用主机操作系统的资源(如:文件系统)并使用主机操作系统支持的隔离? (我假设主机操作系统提供隔离机制)为什么Docker不能用于所有目的的主机操作系统
0
A
回答
1
这取决于您如何定义操作系统。 Docker镜像不是full OS(与虚拟机不同)。他们没有自己的核心。这意味着没有特定的内核模块(用于外部硬件的设备驱动程序等),因为主机OS已经拥有它们。
图像只是流行的Linux发行版的文件系统克隆(图像中的二进制文件是为目标arch构建的offcourse)。可以有它多发的原因,我会尝试把一些在这里:
- 近VM般的体验,因为用户喜欢用自己喜欢的Linux发行 基于分布
- 预配置库。允许您立即运行应用程序,并注意所有基于分布式的依赖关系。
- 灵活性同一台主机上运行多个分布的(大开发/测试沙盒!)
- 从其他容器中,作为每个图像更大的隔离是自给自足,而不必与他人共享文件系统
+1
请注意,您可以使用** no ** OS映像,只是一个二进制文件(如群集图像或其他)。图像的* Os *部分存在于您的应用程序可能具有的依赖项中(对库,二进制等)。 – 2015-05-25 09:49:30
相关问题
- 1. Kubernetes Docker操作系统参数vs主机操作系统参数
- 2. 如何制作运行docker本身的主机操作系统的docker镜像?
- 3. 为什么机器代码依赖于操作系统类型?
- 4. 为什么java JDK为所有操作系统提供选项?
- 5. 为什么kivent_core不能在android操作系统上工作?
- 6. 移动操作系统与桌面操作系统有什么不同
- 7. 什么是AEM 6.2支持的所有操作系统?
- 8. 如何从主机操作系统运行Docker容器的应用程序?
- 9. 如何不为WPF指定主题并使用主机操作系统主题?
- 10. SVN服务器主机操作系统
- 11. STM32 FreeRTOS操作系统,所有的变量不能在我的项目变化
- 12. 为什么选项-m32不能在我的linux操作系统上工作?
- 13. windows mobile(过去的操作系统)和windows phone 7操作系统的功能有什么区别?
- 14. 为什么不strace记录我所有的系统调用?
- 15. R:下载不同操作系统的所有依赖关系
- 16. 如何将guest操作系统中运行之间的主机操作系统与QEMU和主机操作系统传输信号
- 17. 使用主机操作系统风格的跨平台GUI库
- 18. 什么是操作系统和元操作系统之间的差别
- 19. 如何在主机操作系统和docker容器之间共享文件夹
- 20. 为手机创建linux操作系统
- 21. 什么是'subdir'在python 3中为所有操作系统定义了var?
- 22. 基于分布式/操作系统的有趣项目
- 23. 如何制作适用于所有操作系统的文件路径通用?
- 24. 为什么Sitecore 8.2不支持Windows 7操作系统?
- 25. 是否有不是基于或不使用文件/目录系统的操作系统?
- 26. 电脑操作系统不能使用fs登录系统API
- 27. 为什么取消所有操作不会删除所有操作?
- 28. 哪些操作系统用于老虎机游戏机
- 29. 在Docker容器中运行不同的Linux操作系统?
- 30. 为什么我的基于命名的虚拟主机不能正常工作?
一Docker的优势在于,你可以从Ubuntu主机(或其他任何地方)运行Centos/Debian/fedora/busybox ...基于容器 – user2915097 2015-04-02 13:17:28