docker的 linux 内核可以和宿主机不一样吗?

比如宿主机是 Linux 4.15 的内核,但是我想在 docker 中跑一个 Linux5.15 的内核,这有可能实现吗?

问的是有什么 hack 黑魔法来实现
对于容器用的是 Linux 的 cgroup、namespace 这种就太不用说了

参考:docker 镜像内核 和宿主机内核是什么关系?


还有一个不太相关的问题:

minikube 支持 docker in docker,是 Linux 原生提供的支持,还是 docker 或者 k8s 提供的 hack

阅读 6.3k
2 个回答

container 不会跑自己的 kernel ,用的还是宿主机的 kernel 。


所以 docker 里很多系统级的操作需要在启动时额外增加权限,默认是不允许的。因为这些操作将直接影响宿主机。

容器是和宿主共用了相同的内核,但有一个kata-containers的项目,用了一个非常轻量的定制化内核来跑容器,简单来说就相当于宿主上跑虚拟机,虚拟机里面在运行容器。这应该可以解决你的需求。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题