【问题标题】:Can I change the Linux kernel that Docker uses on macOS?我可以更改 Docker 在 macOS 上使用的 Linux 内核吗?
【发布时间】:2021-01-08 00:17:15
【问题描述】:

Q1:我可以更改 Docker 在 macOS 上使用的 Linux 内核吗?

Q2:Docker 什么时候升级 Linux 内核版本?

目前,截至:

2020 年 9 月 21 日,最新的 Docker Desktop v2.3.0.5 (48029),引擎 19.03.12

它使用的是 Linux 内核 4.19.76(2018 年 10 月 22 日发布)。 我希望它在更新的内核上
(例如,Linux 5.8 于 2020 年 8 月 2 日发布;Linux 5.0 于 2019 年 3 月 3 日发布)。

$ docker run -it alpine uname -a
Linux f745312f5a3e 4.19.76-linuxkit #1 SMP Tue May 26 11:42:35 UTC 2020 x86_64 Linux

相关:
How does Docker run a Linux kernel under macOS host?
Can I change the kernel used in Docker for Windows?
https://kernelnewbies.org/LinuxVersions

【问题讨论】:

    标签: linux macos docker linux-kernel


    【解决方案1】:

    Q1:我可以更改 Docker 在 macOS 上使用的 Linux 内核吗?

    安全而简单的答案:不。除非你想直接搞乱 docker desktop for Mac 在安装时为你部署的 Hyperkit VM。我不使用 Mac,我不知道这是否可行,强烈建议您不要走那条路,除非您认真知道自己在做什么,并且准备好在出现故障时重新安装所有东西。

    Q2:Docker 什么时候升级 Linux 内核版本?

    当该更改合并到新版本并在Docker for mac release notes 上宣布时。最新内核升级于 2020-05-27 进行。

    话虽如此,docker 仅使用安装它的 OS/VM 的底层内核。如果您出于非常特定的原因确实需要不同的内核,您可以随时使用您想要的确切内核并行部署您自己的自定义 vm,在那里安装一个 docker 引擎并使用它。

    【讨论】:

      【解决方案2】:

      https://stackoverflow.com/a/65844573/8818399

      Docker 在 Docker Desktop 中使用自己的修补内核(以及专门的 Linux 发行版),称为 linuxkit。在https://hub.docker.com/r/docker/for-desktop-kernel中提到。

      我可以在我的 Docker for Mac 安装的应用程序文件夹中名为 linuxkit 的文件夹中找到 kernelinitrd.imgcmdline

      只需使用linuxkit 的说明/补丁构建您自己的内核并替换这些文件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-09-09
        • 2016-12-18
        • 2016-02-26
        • 2020-10-26
        • 2013-03-28
        相关资源
        最近更新 更多