ทำไมรุ่นเคอร์เนลไม่ตรงกับรุ่นของ Ubuntu ในคอนเทนเนอร์ Docker


11

ฉันมีตัวต่อ Dock ที่สร้างจาก 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 ในภาชนะนักเทียบท่าของฉัน) ซึ่งจะกล่าวถึงที่นี่


คอนเทนเนอร์นั้นทำงานบน Ubuntu Trusty หรือไม่ ถ้าเป็นเช่นนั้นจะเป็นสาเหตุ
saiarcot895

คำตอบ:


12

จากนักเทียบท่าคืออะไร? :

น้ำหนักเบา

ตู้คอนเทนเนอร์ที่ทำงานบนเครื่องเดียวใช้เคอร์เนลระบบปฏิบัติการเดียวกัน พวกเขาเริ่มต้นทันทีและใช้ 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 เป็นรุ่นล่าสุดอย่างเป็นทางการ


คุณหมายถึงฉันจะต้องอัพเกรดเคอร์เนลโฮสต์หรือไม่ ไม่มีวิธีเพียงแค่อัพเกรดเคอร์เนลของคอนเทนเนอร์หรือไม่?
jcm

5
@jcm ไม่มีเคอร์เนลภายในคอนเทนเนอร์ แม้ว่าคุณจะติดตั้งเคอร์เนลมันจะไม่ถูกโหลดเมื่อเริ่มคอนเทนเนอร์ วัตถุประสงค์หลักของคอนเทนเนอร์คือแยกกระบวนการโดยไม่จำเป็นต้องเรียกใช้เคอร์เนลใหม่ นี่คือสาเหตุที่คอนเทนเนอร์ถูก จำกัด เฉพาะ Linux หากคุณต้องการใช้งานระบบปฏิบัติการอื่นหรือรุ่นเคอร์เนลอื่นคุณต้องใช้การจำลองเสมือน
Eric Carvalho
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.