Docker技術入門與實戰第3版)》——1.2 為什么要使用Docker

      網友投稿 680 2025-03-31

      《Docker技術入門與實戰(第3版)》——1.2 為什么要使用Docker


      1.2 為什么要使用Docker

      1. Docker容器虛擬化的好處

      Docker項目的發起人、Docker公司CTO Solomon Hykes認為,Docker在正確的地點、正確的時間順應了正確的趨勢—如何正確地構建應用。

      在云時代,開發者創建的應用必須要能很方便地在網絡上傳播,也就是說應用必須脫離底層物理硬件的限制;同時必須是“任何時間任何地點”可獲取的。因此,開發者們需要一種新型的創建分布式應用程序的方式,快速分發和部署,而這正是Docker所能夠提供的最大優勢。

      舉個簡單的例子,假設用戶試圖基于最常見的 LAMP(Linux+Apache+MySQL+PHP)組合來構建網站。按照傳統的做法,首先需要安裝 Apache、MySQL 和 PHP 以及它們各自運行所依賴的環境;之后分別對它們進行配置(包括創建合適的用戶、配置參數等);經過大量的操作后,還需要進行功能測試,看是否工作正常;如果不正常,則進行調試追蹤,意味著更多的時間代價和不可控的風險。可以想象,如果應用數目變多,事情會變得更加難以處理。

      更為可怕的是,一旦需要服務器遷移(例如從亞馬遜云遷移到其他云),往往需要對每個應用都進行重新部署和調試。這些瑣碎而無趣的“體力活”,極大地降低了用戶的工作效率。究其根源,是這些應用直接運行在底層操作系統上,無法保證同一份應用在不同的環境中行為一致。

      而 Docker 提供了一種更為聰明的方式,通過容器來打包應用、解耦應用和運行平臺。這意味著遷移的時候,只需要在新的服務器上啟動需要的容器就可以了,無論新舊服務器是否是同一類型的平臺。這無疑將幫助我們節約大量的寶貴時間,并降低部署過程出現問題的風險。

      2. Docker在開發和運維中的優勢

      對開發和運維(DevOps)人員來說,最夢寐以求的效果可能就是一次創建或配置,之后可以在任意地方、任意時間讓應用正常運行,而Docker恰恰是可以實現這一終極目標的“瑞士軍——刀”。具體說來,在開發和運維過程中,Docker具有如下幾個方面的優勢:

      更快速的交付和部署。使用Docker,開發人員可以使用鏡像來快速構建一套標準的開發環境;開發完成之后,測試和運維人員可以直接使用完全相同的環境來部署代碼。只要是開發測試過的代碼,就可以確保在生產環境無縫運行。Docker可以快速創建和刪除容器,實現快速迭代,節約開發、測試、部署的大量時間。并且,整個過程全程可見,使團隊更容易理解應用的創建和工作過程。

      更高效的資源利用。運行Docker容器不需要額外的虛擬化管理程序(Virtual Machine Manager,VMM,以及 Hypervisor)的支持,Docker是內核級的虛擬化,可以實現更高的性能,同時對資源的額外需求很低。與傳統虛擬機方式相比,Docker的性能要提高1~2個數量級。

      更輕松的遷移和擴展。Docker 容器幾乎可以在任意的平臺上運行,包括物理機、虛擬機、公有云、私有云、個人電腦、服務器等,同時支持主流的操作系統發行版本。這種兼容性讓用戶可以在不同平臺之間輕松地遷移應用。

      更簡單的更新管理。使用 Dockerfile,只需要小小的配置修改,就可以替代以往大量的更新工作。所有修改都以增量的方式被分發和更新,從而實現自動化并且高效的容器管理。

      3. Docker與虛擬機比較

      作為一種輕量級的虛擬化方式,Docker 在運行應用上跟傳統的虛擬機方式相比具有如下顯著優勢:

      Docker 容器很快,啟動和停止可以在秒級實現,這相比傳統的虛擬機方式(數分鐘)要快得多;

      Docker 容器對系統資源需求很少,一臺主機上可以同時運行數千個 Docker 容器(在 IBM 服務器上已經實現了同時運行 10K 量級的容器實例);

      Docker 通過類似 Git 設計理念的操作來方便用戶獲取、分發和更新應用鏡像,存儲復用,增量更新;

      Docker 通過 Dockerfile 支持靈活的自動化創建和部署機制,以提高工作效率,并標準化流程。

      Docker容器除了運行其中的應用外,基本不消耗額外的系統資源,在保證應用性能的同時,盡量減小系統開銷。傳統虛擬機方式運行 N 個不同的應用就要啟用 N 個虛擬機(每個虛擬機需要單獨分配獨占的內存、磁盤等資源),而 Docker 只需要啟動 N 個隔離得“很薄的”容器,并將應用放進容器內即可。應用獲得的是接近原生的運行性能。

      當然,在隔離性方面,傳統的虛擬機方式提供的是相對封閉的隔離。但這并不意味著 Docker 不安全。Docker 利用 Linux 系統上的多種防護技術實現了嚴格的隔離可靠性,并且可以整合眾多安全工具。從 1.3.0 版本開始,Docker 重點改善了容器的安全控制和鏡像的安全機制,極大地提高了使用 Docker 的安全性。在已知的大規模應用中,目前尚未出現值得擔憂的安全隱患。

      表1-1比較了使用 Docker 容器技術與傳統虛擬機技術的各種特性,可見容器技術在很多應用場景下都具有巨大的優勢。

      表1-1 Docker容器技術與傳統虛擬機技術的比較

      運維 容器 Docker

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:甘特圖時間軸
      下一篇:如何只給其中幾張幻燈片設置自動播放(幾個幻燈片自動播放怎么設置)
      相關文章
      亚洲国产精品ⅴa在线观看| 亚洲一区二区三区免费在线观看| 亚洲专区一路线二| 久久久久亚洲AV成人片| 亚洲精品成人片在线观看精品字幕 | 无码国产亚洲日韩国精品视频一区二区三区| 亚洲人色大成年网站在线观看| 亚洲综合久久1区2区3区| 在线电影你懂的亚洲| 亚洲成在人线中文字幕| 亚洲短视频在线观看| 亚洲另类春色国产精品| 亚洲狠狠成人综合网| 亚洲精品国产国语| 亚洲av永久无码精品秋霞电影秋| 亚洲精品V天堂中文字幕| 久久亚洲精品11p| 亚洲国产精品激情在线观看| 亚洲国产一区视频| 亚洲综合无码精品一区二区三区| 亚洲熟妇丰满多毛XXXX| 亚洲AV永久精品爱情岛论坛| 亚洲视频2020| 亚洲人成在线精品| 亚洲AV男人的天堂在线观看| 亚洲综合精品成人| jzzijzzij在线观看亚洲熟妇| 亚洲福利中文字幕在线网址| 久久亚洲精品无码播放| 久久精品亚洲综合一品| 亚洲女人18毛片水真多| 国内精品久久久久影院亚洲| 午夜亚洲WWW湿好爽| 亚洲性久久久影院| 亚洲av午夜福利精品一区人妖| 久久久久亚洲AV无码专区首JN| 麻豆狠色伊人亚洲综合网站| 亚洲AV成人无码久久WWW| 日韩亚洲变态另类中文| 99久久亚洲综合精品成人网| 亚洲第一区二区快射影院|