为什么我来自 Docker Hub 的 ubuntu 图像附带 4.19 Linux 内核?

Why my ubuntu image from Docker Hub ships with 4.19 Linux Kernel?

我正在为各种 docker 容器使用 Ubuntu 20.04 LTS 映像,最近意识到它们是 运行 4.19 linux 内核。我有点好奇为什么它们不是 运行 linux 内核 5.4,就像 release notes 中提到的那样。有人知道哪里出了问题吗?

重现过程:

结果:

uname -r 
4.19.76-linuxkit

cat /proc/version
Linux version 4.19.76-linuxkit (root@4abe09437d05) (gcc version 8.3.0 (Alpine 8.3.0)) #1 SMP Tue May 26 11:42:35 UTC 2020

cat /etc/os-release
NAME="Ubuntu"
VERSION="20.04.1 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.1 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

没有错。 Docker 容器使用主机内核 - 它们没有自己的内核。

现在,在你的情况下,它说 4.19.76-linuxkit 的事实表明你在 Windows 或 macOS 上 运行。它们显然没有底层 Linux 内核,因此 docker 实际上运行在具有轻量级 Linux OS (linuxkit) 的虚拟机中。那就是你看到的内核版本。