好程式設計師Java分享為什麼要使用Docker
好程式設計師 Java培訓分享為什麼要使用Docker,概述 作為一種新興的虛擬化方式, Docker 跟傳統的虛擬化方式相比具有眾多的優勢。
更高效的利用系統資源
由於容器不需要進行硬體虛擬以及執行完整作業系統等額外開銷, Docker 對系統資源的利用率更高。無論是應用執行速度、記憶體損耗或者檔案儲存速度,都要比傳統虛擬機器技術更高效。因此,相比虛擬機器技術,一個相同配置的主機,往往可以執行更多數量的應用。
更快速的啟動時間
傳統的虛擬機器技術啟動應用服務往往需要數分鐘,而 Docker 容器應用,由於直接執行於宿主核心,無需啟動完整的作業系統,因此可以做到秒級、甚至毫秒級的啟動時間。大大的節約了開發、測試、部署的時間。
一致的執行環境
開發過程中一個常見的問題是環境一致性問題。由於開發環境、測試環境、生產環境不一致,導致有些 bug 並未在開發過程中被發現。而 Docker 的映象提供了除核心外完整的執行時環境,確保了應用執行環境一致性,從而不會再出現 「這段程式碼在我機器上沒問題啊」 這類問題。
持續交付和部署
對開發和運維(DevOps)人員來說,最希望的就是一次建立或配置,可以在任意地方正常執行。
使用 Docker 可以透過定製應用映象來實現持續整合、持續交付、部署。開發人員可以透過 Dockerfile 來進行映象構建,並結合 持續整合 (Continuous Integration) 系統進行整合測試,而運維人員則可以直接在生產環境中快速部署該映象,甚至結合 持續部署 (Continuous Delivery/Deployment) 系統進行自動部署。
而且使用 Dockerfile 使映象構建透明化,不僅僅開發團隊可以理解應用執行環境,也方便運維團隊理解應用執行所需條件,幫助更好的生產環境中部署該映象。
更輕鬆的遷移
由於 Docker 確保了執行環境的一致性,使得應用的遷移更加容易。Docker 可以在很多平臺上執行,無論是物理機、虛擬機器、公有云、私有云,甚至是筆記本,其執行結果是一致的。因此使用者可以很輕易的將在一個平臺上執行的應用,遷移到另一個平臺上,而不用擔心執行環境的變化導致應用無法正常執行的情況。
更輕鬆的維護和擴充套件
Docker 使用的分層儲存以及映象的技術,使得應用重複部分的複用更為容易,也使得應用的維護更新更加簡單,基於基礎映象進一步擴充套件映象也變得非常簡單。此外,Docker 團隊同各個開源專案團隊一起維護了一大批高質量的官方映象,既可以直接在生產環境使用,又可以作為基礎進一步定製,大大的降低了應用服務的映象製作成本。
特性 |
容器 |
虛擬機器 |
啟動 |
秒級 |
分鐘級 |
硬碟使用 |
一般為 MB |
一般為 GB |
效能 |
接近原生 |
弱於 |
系統支援量 |
單機支援上千個容器 |
一般幾十個 |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913892/viewspace-2649226/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 設計師為什麼要學程式設計,開發者為什麼要學設計?程式設計
- 好程式設計師Java培訓分享Java包是什麼?程式設計師Java
- 好程式設計師Java培訓分享Java有什麼優勢 為什麼學的人多程式設計師Java
- 好程式設計師Java培訓分享學Java程式設計要注意什麼程式設計師Java
- 好程式設計師:web前端解答為什麼要學JavaScript程式設計師Web前端JavaScript
- 好程式設計師Java培訓分享面試Java要注意什麼程式設計師Java面試
- 好程式設計師Java教程分享meta標籤什麼作用程式設計師Java
- 為什麼要成為「無敵」程式設計師?程式設計師
- 中國程式設計師為什麼要跳槽?程式設計師
- 好程式設計師Java培訓分享學Java需要什麼基礎?程式設計師Java
- 好程式設計師Java學習路線分享maven是什麼程式設計師JavaMaven
- 好程式設計師web前端培訓分享為什麼那麼多人使用vue.js程式設計師Web前端Vue.js
- 好程式設計師Java學習路線分享java為什麼不支援泛型陣列程式設計師Java泛型陣列
- 程式設計師:你為什麼要離職?程式設計師
- 為什麼要投資程式設計師的幸福?程式設計師
- 好程式設計師Java培訓分享Java程式設計技巧程式設計師Java
- 好程式設計師雲端計算教程分享入門雲端計算要精通學習什麼?程式設計師
- 好程式設計師Java教程分享Java之設計模式程式設計師Java設計模式
- 好程式設計師Java分享零基礎學Java要掌握哪些技能?程式設計師Java
- 好程式設計師Java培訓分享Java程式設計師技能提升指南程式設計師Java
- 作為程式設計師為什麼要閱讀原始碼程式設計師原始碼
- 好程式設計師Java培訓分享Java學習到什麼程度可以找到工作程式設計師Java
- 好程式設計師Java教程分享Java面試妙招程式設計師Java面試
- 好程式設計師Java教程分享Java語法程式設計師Java
- 為什麼程式設計師要儘量少寫程式碼程式設計師
- 程式設計師壓力那麼大,為什麼還要選擇做程式設計師程式設計師
- 好程式設計師Java教程分享List介面程式設計師Java
- 好程式設計師Java教程分享javaweb框架程式設計師JavaWeb框架
- 程式設計師 為什麼要堅持寫部落格程式設計師
- 為什麼程式設計師新手要考慮接單?程式設計師
- 我們程式設計師為什麼要關注 JavaScript ?程式設計師JavaScript
- 好程式設計師Java教程解讀JDBC是什麼程式設計師JavaJDBC
- 好程式設計師Java教程分享Java開發工具程式設計師Java
- 好程式設計師Java培訓分享Java程式設計師常用的工具類庫程式設計師Java
- 好程式設計師Java培訓分享20個Java程式設計師基礎題程式設計師Java
- 好程式設計師:為什麼很少見到工資高的程式設計師炫富程式設計師
- 好程式設計師Java學習路線分享Java框架怎麼搭建程式設計師Java框架
- 好程式設計師Java分享SQL語言之索引程式設計師JavaSQL索引