在Windows和Linux系統上都可以運行Docker容器。Docker在兩種操做系統上的工做方式既有類似,又有不一樣。下面,我將介紹在Windows系統上安裝和運行Docker的步驟,而且指出它們與在Linux系統上運行Docker相比的相同之處和不一樣之處。nginx
咱們先從安裝開始。在這兩個操做系統上安裝Docker的過程是不一樣的。docker
在Windows上安裝Docker,就像安裝任何Windows應用程序同樣,你只須要下載該應用程序,點擊安裝便會彈出一個友好的用戶安裝嚮導:shell
相比之下,想要在Linux上安裝Docker,你能夠從發行版的包管理器(如yum、dnf)中獲取Docker包,或者使用如下命令直接從Docker站點安裝:微信
sudo sh -c "wget -qO- https://get.docker.io/gpg | apt-key add -"
在Windows和Linux系統中安裝Docker的方法只有一個不一樣。在Linux系統上安裝Docker時,只須要安裝Docker引擎和管理工具,而不須要建立虛擬機或者虛擬網絡,由於你的容器將會爲你建立環境。網絡
Docker在Windows系統上安裝是不一樣的。在安裝時,Docker會建立一個基於Linux的虛擬機,叫作MobyLinux虛擬機,這個虛擬機是基於Alpine Linux的。Docker應用程序會鏈接到此虛擬機,你即可以開始建立具備必要操做組件的容器了。架構
爲了與本地網絡和NAT(網絡地址轉換)進行通訊,在Docker安裝中會爲虛擬機配置一個子網,以便你的容器在應用程序中使用。工具
由於全部這些步驟都發生在後臺,身爲用戶的你沒必要爲這些步驟操心。不過,事實上Docker是在Windows後臺運行虛擬機,這也是Docker在Windows和Linux的另一個主要區別。學習
一旦你安裝了Docker,在Linux和Windows系統上命令都是同樣的。不管你運行哪一種操做系統,你只須要學習一套工具。spa
運行Docker命令時,Windows和Linux的惟一區別在於你運行它們的位置。在Linux系統上,你可使用你選擇的終端仿真器。在Windows系統上,使用PowerShell的CLI(命令行界面)。操作系統
下面是在Windows系統上的PowerShell裏運行Docker的例子。第一個截圖顯示的是系統的信息,而第二個截圖顯示了一些在Windows系統上運行的容器。
就我我的觀點而言,我發如今Linux操做Docker比在Windows操做更容易。儘管在Windows和Linux系統環境下Docker的功能並無什麼區別,可是Linux上的安裝過程要快一些(安裝apt-get比安裝Windows軟件包要快),並且在Linux上更容易訪問shell。
上面說的,僅僅只是我我的的偏好。從技術層面來說,在Windows和Linux系統上使用Docker並無什麼真正區別。你能夠在這兩個平臺上使用Docker實現相同的功能。因此不能講Windows或Linux對Docker的託管是「更好的」。
事實上,Docker的優秀之處正是在於,並不存在所謂的哪一個操做系統比另外一個操做系統更適合它。無論Docker在哪裏運行(儘管有些配置以及後臺運行的東西不盡相同),Docker的用戶體驗老是同樣的。無論你使用哪一個操做系統,哪一個特定的shell,也無論Docker環境是在雲端仍是在本地運行,又或者外面是晴天仍是雨天,一個docker run -d -p 80:80 nginx命令就能夠啓動一個NGINX容器。
這種一致性使得Docker具備很強的可靠性,從而帶來極佳的用戶體驗。它能夠幫助你避免配置「地獄」和環境的不可預測性,然而這些都是虛擬機和其它舊式基礎架構的重要組成部分。
關注微信公衆號(RancherLabs),獲取每日Docker&K8S技術乾貨推送。添加Rancher助手(RancherLabsChina)爲好友,加入技術羣,獲取免費技術支持,年底贏取Apple Watch、Beats耳機、機械鍵盤等重磅好禮。