docker與虛擬機器的主要區別:
Docker 是一個開源的應用程式容器引擎,讓開發者可以打包他們的應用程式以及依賴套件到一個可移植的容器中,然後發佈到任何流行的Linux 機器上,也可以虛擬化。容器是完全使用沙箱機制,彼此之間不會有任何介面。
虛擬機器(Virtual Machine)指透過軟體模擬的具有完整硬體系統功能的、運行在一個完全隔離環境中的完整電腦系統。
虛擬機器與容器差異
啟動時間:Docker秒級啟動,虛擬機器分鐘級啟動。
輕量級:docker映像大小通常以M為單位,虛擬機器以G為單位。容器資源佔用量小,且要比虛擬機器部署更快速。
性能:docker共享宿主機內核,系統級虛擬化,佔用資源少,沒有Hypervisor層開銷,性能基本上接近物理機; 虛擬機需要Hypervisor層支持,虛擬化一些設備,具有完整的GuestOS ,虛擬化開銷大,因而降低效能,沒有容器效能好。
安全性:由於共享宿主機內核,只是進程級隔離,因此隔離性和穩定性不如虛擬機,docker具有一定權限存取宿主機內核,存在一定安全隱患。
使用需求:VM基於硬體的完全虛擬化,需要硬體CPU虛擬化技術支援; docker共享宿主機內核,可運行在主流的Linux發行版,不用考慮CPU是否支援虛擬化技術。
更多相關教學課程,請關注PHP中文網docker教學欄位。
以上是docker與虛擬機器的主要區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!