docker的一些應(yīng)用場景:
1、簡化配置
虛擬機的最大好處是能在你的硬件設(shè)施上運行各種配置不一樣的平臺(軟件, 系統(tǒng)), Docker在降低額外開銷的情況下提供了同樣的功能. 它能讓你將運行環(huán)境和配置放在代碼匯總?cè)缓蟛渴? 同一個Docker的配置可以在不同的環(huán)境環(huán)境中使用, 這樣就降低了硬件要求和應(yīng)用環(huán)境之間耦合度.
2、代碼流水線管理
代碼從開發(fā)者的機器到最終在生產(chǎn)環(huán)境上的部署, 需要經(jīng)過很多的中堅環(huán)境. 而每一個中間環(huán)境都有自己微小的差別, Docker給應(yīng)用提供了一個從開發(fā)到上線均一致的環(huán)境, 讓代碼的流水線變得簡單不少.
3、提升開發(fā)效率
不同環(huán)境中, 開發(fā)者的共同目標:
一, 想讓開發(fā)環(huán)境盡量貼近生產(chǎn)環(huán)境.
二 , 想快速搭建開發(fā)環(huán)境
開發(fā)環(huán)境的機器通常內(nèi)存比較小, 之前使用虛擬的時候, 我們經(jīng)常需要為開發(fā)環(huán)境的機器加內(nèi)存, 而現(xiàn)在Docker可以輕易的讓幾十個服務(wù)在Docker中跑起來.
4、隔離應(yīng)用
開發(fā)時會在一個臺機器上運行不同的應(yīng)用.
一, 為了降低成本, 進行服務(wù)器整合
二, 將一個整體式的應(yīng)用拆分成低耦合的單個服務(wù)(微服務(wù)架構(gòu))
5、整合服務(wù)器
Docker隔離應(yīng)用的能力使得Docker可以整合多個服務(wù)器以降低成本. 由于沒有多個操作系統(tǒng)的內(nèi)存占用, 以及能在多個實例之間共享沒有使用的內(nèi)存, Docker可以比虛擬機提供更好的服務(wù)器整合解決方案.
6、調(diào)試能力
Docker提供了很多的工具, 這些工具不一定只是針對容器, 但是卻適用于容器. 他們提供了很多功能, 包括可以為容器設(shè)置檢查點, 設(shè)置版本, 查看兩個容器之間的差別, 這些特性可以幫助調(diào)試Bug.
7、多租戶環(huán)境
多租戶環(huán)境的應(yīng)用中, 它可以避免關(guān)鍵應(yīng)用的重寫.我們一個特別的關(guān)于這個場景的例子是為loT(物聯(lián)網(wǎng))的應(yīng)用開發(fā)一個快速, 易用的多租戶環(huán)境. 這種多租戶的基本代碼非常復(fù)雜, 很難處理, 重新規(guī)劃以應(yīng)用不但消耗時間, 也浪費金錢.
使用Docker, 可以為每一個租戶的應(yīng)用層的多個實例創(chuàng)建隔離的環(huán)境, 這不僅簡單而且成本低廉, 因為Docker環(huán)境啟動的速度快, diff命令很高效.
8、快速部署
Docker為進程創(chuàng)建一個容器, 不需要啟動一個操作系統(tǒng), 時間縮短為秒級別.
可以在數(shù)據(jù)中心創(chuàng)建銷毀資源而無須擔心重新啟動帶來的開銷. 通常數(shù)據(jù)中心的資源利用率只有30% , 通過使用Docker并進行有效的資源分配可以提高資源的利用率.