我有一个有内核空间代码的应用程序,它是在linux内核2.6.32-431.el6.x86_64 (centos6.5)中编译的。然后将其作为内核模块安装,以运行应用程序。当我尝试使用Docker (安装在Amazon Linux AWS EC2实例中)容器化我的应用程序时,它抱怨更高的内核版本与模块不兼容。是否必须在内核版本为2.6.32-431.el6.x86_64的主机上安装Docker?如果是,我们的容器是否依赖于特定的主机?
发布于 2016-05-27 17:01:48
容器包括应用程序及其所有依赖项,但与其他容器共享内核。它们作为独立进程在主机操作系统的用户空间中运行。
https://www.docker.com/what-docker
Docker容器使用主机的内核。您可以在容器中安装与主机内核相同的内核版本,但您将无法在Amazon Linux上运行CentOS6编译的内核。
考虑到您的特定应用程序需求,我建议使用“真正的”虚拟化解决方案,比如XEN或KVM,它们允许您在VM中使用自己的内核。
https://stackoverflow.com/questions/37478397
复制相似问题