Чому версія ядра не відповідає версії Ubuntu в контейнері Docker?


11

У мене є контейнер Docker, побудований з Ubuntu 14.10. Коли я входжу в контейнер, щоб перевірити версію 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-родової , що я хотів би мати (тобто, маючи fallocate роботи на AUFS в моєму Docker контейнері) , який обговорюється тут .


Чи працює контейнер на Ubuntu Trusty? Якщо так, то саме тому.
— saiarcot895

Відповіді:


12

З чого таке Докер? :

СВІТЛО

Контейнери, що працюють на одній машині, мають одне ядро ​​операційної системи; вони починаються миттєво і використовують менше оперативної пам’яті. Зображення побудовані з багатошарових файлових систем та мають спільні файли, що робить використання диска та завантаження зображень набагато ефективнішими.

Контейнери працюють на хості ядра ОС. У вашому випадку хостом може бути Ubuntu 14.04 (працює з оригінальним ядром) або Ubuntu 12.04 (працює ядро ​​з надійного стеку апаратних можливостей ).

Якщо хостом є 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 є останнім офіційним.


Ви маєте на увазі, що мені доведеться оновити ядро ​​хоста? Немає можливості просто оновити ядро ​​контейнера?
— jcm

5
@jcm У контейнері немає ядра. Навіть якщо ви встановите ядро, воно не завантажується при запуску контейнера. Сама мета контейнера - ізолювати процеси без необхідності запуску нового ядра. Ось чому контейнери обмежені для Linux. Якщо вам потрібно запустити іншу ОС або іншу версію ядра, вам слід скористатися віртуалізацією.
— Ерік Карвальо
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.