2014-11-25 95 views

回答

4

是的,對於大多數應用程序的工作。內核是你真正運行的任何內容(在你的例子中是RedHat),而用戶空間是由容器(Ubuntu)提供的。

大多數Linux內核變體非常類似,應用程序不會注意到。但是,如果代碼依賴內核中不存在的特定內容,Docker不能幫助您。

Docker本身在撰寫本文時依賴於某些最低內核特性,版本3.8。 https://docs.docker.com/engine/installation/binaries/

+0

另外系統架構是一個限制。例如,x86_64映像不會在ARM上運行。 I.E.你不會在Raspberry PI上運行官方的Ubuntu鏡像。 – chadrien 2014-11-25 08:46:24

5

是的。這是碼頭工人的主要想法。

它在chrooted env中創建了一個「靜態容器」,它能夠在任何linux上運行,因爲圖像中包含了所有需要的用戶空間依賴關係。由於Linux(內核)在系統調用及其調用方案上保持向後兼容性,因此這個想法可以跨越各種版本甚至不同的Linux發行版。

當然,源和目標系統上的二進制體系結構(比如amd64)需要相同。

相關問題