web-dev-qa-db-ja.com

カーネルバージョンがDockerコンテナのUbuntuバージョンと一致しないのはなぜですか?

Ubuntu 14.10から構築されたDockerコンテナーがあります。コンテナにログインしてUbuntuバージョンとカーネルバージョンを確認すると、次のように表示されます。

root@~$>> lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.10
Release:    14.10
Codename:   utopic   

root@~$>> uname -a
    Linux ambiata-aws 3.13.0-24-generic #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

Ubuntu 14.10はカーネルバージョン3.16( ここ に記載されているように)であると考えていたのに、なぜカーネルバージョン3.13.0-24-genericがあるのですか?

私が求めている理由は、3.13.0-29-genericにパッチがあります(つまり、ドッカーコンテナでAUFSに取り組んでいます) here

11
jcm

Dockerとは? から:

軽量

単一のマシンで実行されているコンテナは、同じオペレーティングシステムカーネルを共有します。すぐに起動し、使用するRAMが少なくなります。画像は階層化されたファイルシステムから構築され、共通ファイルを共有するため、ディスクの使用と画像のダウンロードがより効率的になります。

コンテナはホストOSカーネルで実行されます。あなたの場合、ホストはUbuntu 14.04(元のカーネルを実行)またはUbuntu 12.04(trustyの ハードウェア有効化 スタックからカーネルを実行)です。

ホストがUbuntu 14.04の場合、カーネル3.16をインストールできます。

Sudo apt-get install linux-generic-lts-utopic

またはカーネル3.19:

Sudo apt-get install linux-generic-lts-vivid

Ubuntu 12.04の場合、カーネル3.13は最新の公式のものです。

11
Eric Carvalho