尚硅谷Docker---一、docker雜記
1、總結
一句話總結:
~ php用的homestead就至關於docker,javaee通常都是用docker,php也能夠用docker
~ docker強就強在性能好,並且是分塊的
一、docker和linux的關係?
docker就是微縮版的linux,因此命令也和linux的命令差很少
二、docker爲何性能好?
不一樣的模塊共用底層的內核
三、Docker 和傳統虛擬化方式的不一樣之處?
* 傳統虛擬機技術是虛擬出一套硬件後,在其上運行一個【完整操做系統】,在該系統上再運行所需應用進程;
* 而容器內的應用進程【直接運行於宿主的內核】,容器內沒有本身的內核,並且也沒有進行硬件虛擬。所以容器要比傳統虛擬機更爲輕便。
* 每一個容器之間【互相隔離】,每一個容器有本身的文件系統 ,容器之間進程不會相互影響,能區分計算資源。
四、docker是怎麼工做的?
Docker是一個【Client-Server結構】的系統,Docker守護進程運行在主機上, 而後【經過Socket鏈接從客戶端訪問】,守護進程從客戶端接受命令並管理運行在主機上的容器。 容器,是一個運行時環境,就是咱們前面說到的集裝箱。
五、爲何Docker比較比VM快?
(1)docker有着比虛擬機更少的抽象層。
(2)docker利用的是宿主機的內核,而不須要Guest OS。
(1)docker有着比虛擬機更少的抽象層。由亍docker不須要Hypervisor實現硬件資源虛擬化,運行在docker容器上的程序直接使用的都是實際物理機的硬件資源。所以在CPU、內存利用率上docker將會在效率上有明顯優點。
(2)docker利用的是宿主機的內核,而不須要Guest OS。所以,當新建一個容器時,docker不須要和虛擬機同樣從新加載一個操做系統內核。仍而避免引尋、加載操做系統內核返個比較費時費資源的過程,當新建一個虛擬機時,虛擬機軟件須要加載Guest OS,返個新建過程是分鐘級別的。而docker因爲直接利用宿主機的操做系統,則省略了返個過程,所以新建一個docker容器只須要幾秒鐘。
php
2、內容在總結中