Docker 是一個開源的應用容器引擎,讓開發者能夠打包他們的應用以及依賴包到一個可移植的容器中,而後發佈到任何流行的 Linux 機器上,也能夠實現虛擬化。容器是徹底使用沙箱機制,相互之間不會有任何接口。docker
windows須要支持虛擬化,須要安裝Hyper-V(windows自帶的有)數據庫
> 1. 註冊docker,https://www.docker.com/
> 2. 下載docker,默認安裝就能夠,以後重啓
> 3. cmd下查看是否安裝成功,docker --version
> 4. 安裝Kitematic (Alpha),方便操做鏡像,能夠圖形化的方式操做,安裝以後,鏡像下載不下來的話進行第五步
> 5. 安裝Docker Toolbox,勾選Kitematic (Alpha),以後啓動Kitematic (Alpha)就能夠了windows
1. docker安裝以後,cmd下docker --version不起做用
重啓以後ok
2. 下載Kitematic,解壓,登陸,運行以後,安裝鏡像不成功
下載Docker Toolbox,安裝,安裝的時候勾選Kitematic (Alpha),安裝完成後刪除Oracle VM VirtualBox(沒什麼用),Docker Quickstart Terminal也刪除服務器
> 1. Web應用的自動化打包和發佈。
> 2. 自動化測試和持續集成、發佈。
> 3. 在服務型環境中部署和調整數據庫或其餘的後臺應用。
> 4. 隔離應用oop
一、簡化程序:
Docker 讓開發者能夠打包他們的應用以及依賴包到一個可移植的容器中,而後發佈到任何流行的 Linux 機器上,即可以實現虛擬化。Docker改變了虛擬化的方式,使開發者能夠直接將本身的成果放入Docker中進行管理。方便快捷已是 Docker的最大優點,過去須要用數天乃至數週的 任務,在Docker容器的處理下,只須要數秒就能完成。
二、避免選擇恐懼症:
若是你有選擇恐懼症,仍是資深患者。Docker 幫你 打包你的糾結!好比 Docker 鏡像;Docker 鏡像中包含了運行環境和配置,因此 Docker 能夠簡化部署多種應用實例工做。好比 Web 應用、後臺應用、數據庫應用、大數據應用好比 Hadoop 集羣、消息隊列等等均可以打包成一個鏡像部署。
三、節省開支:
一方面,雲計算時代到來,使開發者沒必要爲了追求效果而配置高額的硬件,Docker 改變了高性能必然高價格的思惟定勢。Docker 與雲的結合,讓雲空間獲得更充分的利用。不只解決了硬件管理的問題,也改變了虛擬化的方式。
4. 整合服務器
正如經過虛擬機來整合多個應用,Docker隔離應用的能力使得Docker能夠整合多個服務器以下降成本。
5. 多租戶環境
另一個Docker有意思的使用場景是在多租戶的應用中,它能夠避免關鍵應用的重寫。咱們一個特別的關於這個場景的例子是爲IoT(譯者注:物聯網)的應用開發一個快速、易用的多租戶環境。這種多租戶的基本代碼很是複雜,很難處理,從新規劃這樣一個應用不但消耗時間,也浪費金錢。使用Docker,能夠爲每個租戶的應用層的多個實例建立隔離的環境,這不只簡單並且成本低廉,固然這一切得益於Docker環境的啓動速度和其高效的diff命令。
你能夠在這裏瞭解關於此場景的更多信息。
6. 快速部署
在虛擬機以前,引入新的硬件資源須要消耗幾天的時間。虛擬化技術(Virtualization)將這個時間縮短到了分鐘級別。而Docker經過爲進程僅僅建立一個容器而無需啓動一個操做系統,再次將這個過程縮短到了秒級。這正是Google和Facebook都看重的特性。能夠在數據中心建立銷燬資源而無需擔憂從新啓動帶來的開銷。一般數據中心的資源利用率只有30%,經過使用Docker並進行有效的資源分配能夠提升資源的利用率。性能