web-dev-qa-db-ja.com

$(uname -a)dockerHostまたは任意のdockerコンテナーで同じものを返します

$(uname -a)がDockerコンテナ内のホストマシンと同じLinuxカーネルを返すのはなぜですか?

uname -a
#=> Linux leo 3.13.0-55-generic #94-Ubuntu SMP Thu Jun 18 00:27:10 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

docker run -ti --rm ubuntu:vivid-20150611 uname -a
#=> Linux 147c3aff216b 3.13.0-55-generic #94-Ubuntu SMP Thu Jun 18 00:27:10 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

ホストマシンはUbuntu14.04(信頼できる)ですが、コンテナーはUbuntu 15.04(vivid)であり、カーネル3.19が必要です。

17
Leo Gallucci

Dockerはホストオペレーティングシステムカーネルを使用します。コンテナ内にカスタムカーネルや追加カーネルはありません。マシン上で実行されているすべてのコンテナは、この「ホスト」カーネルを共有しています。

詳細については、SuperUserの この質問 を参照してください。

18
user4793675
  • cat /etc/os-release、または
  • cat /etc/issueCentOSの場合

https://serverfault.com/a/805390/161568 を参照してください。

8