日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

为什么选择Docker?

發布時間:2023/12/3 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 为什么选择Docker? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

容器并不是什么新鮮事物,但是實現它們總是比需要的要復雜一些。 Docker在簡化容器方面取得了長足的進步,并從此引爆了整個世界。 讓我們看看為什么。

為什么Docker成為家喻戶曉的名字

Docker不是很老。 2014年5月,當我寫了一篇煽動性博客文章Docker是Heroku Killer時 ,它即將達到1.0版本。幾周后的后續行動叫做Tempering My Docker Enthusiasm 。 旁注, Heroku仍然很棒,我對Docker的熱情很強。 Heroku現在也支持Docker 。

自2014年6月發布1.0版以來,Docker甚至在谷歌,微軟,亞馬遜,思科,惠普,IBM,RedHat,VMWare等公司的共同努力下,以Docker為核心開發了 “云”。 那是不平凡的首次亮相。

有什么大不了的?

深入研究,Docker允許將應用程序隔離到容器中,并提供有關它們生存所需的確切說明,可以輕松地在機器之間移植。 虛擬機也允許完全相同的事情,并且已經存在諸如Chef和Puppet之類的許多其他工具,以使這些配置的構建可移植且可再現。

盡管Docker與這兩者相比都具有更簡化的結構,但造成中斷的真正領域是資源效率。

如果要運行30個Docker容器,則可以在單個虛擬機上全部運行它們。 要運行30個虛擬機,您必須引導至少具有最低可用資源要求的30個操作系統,然后再將虛擬機管理程序分解為可在基本OS上運行的虛擬機。

僅假設您要使用最少256M的VM,您將使用具有30個不同OS內核來管理資源的7.5G RAM。 使用Docker,您可以為一個VM分配大量RAM,并有一個OS來管理那些相互競爭的資源……并且您可以在基本操作系統上完成所有這些工作,而無需完全參與昂貴的虛擬機管理程序。

現在,所有這些聽起來對單個計算機上的競爭資源都很好,但是一對一的比較又如何呢? Boden Russell正是這樣做的: 對Docker vs KVM進行基準測試 。 Docker贏得了26比1的性能提升。

要記住的一個關鍵因素是,由于與Linux內核的緊密集成,Docker能夠執行其操作。 它在低水平上具有顯著的效率,因此,Docker不能(當前)替代Windows,OS X等虛擬機。在非Linux機器上運行Docker容器時,它們將在內部運行通過boot2docker虛擬機。

這些類型的效率提升可與亞馬遜等云提供商并在每小時出售的虛擬機上將性能提高26比1的產品相提并論。 對于他們的業務而言,這是一個巨大的推動力,因為您突然就能以相同的價格做更多的事情。 無需為需要部署的每個隔離應用程序購買兩個虛擬機(以實現負載平衡/可用性),您只需將三個更大的VM群集在一起,然后將所有虛擬機部署到其中,實際的處理器限制就可以了。

當企業圍繞云遷移制定成本效益決策時,這會極大地推動云提供商的發展……從而產生了混亂。

Docker實現一致的環境

Docker如此具有破壞性的另一個原因是可移植性。 至此,我們主要討論了云提供程序,但是使用了較早的示例,即需要30個容器才能運行30個虛擬機……請考慮您的開發計算機。

隨著微服務在開發領域的爆炸式增長,很有可能在筆記本電腦上進行開發會涉及同時啟動其中幾種服務才能正常工作。 Vagrant在每個VM的基礎上提供了幫助,但是如果我需要啟動四個或五個不同的微服務以在本地工作,這意味著我需要在筆記本電腦上運行四個或五個虛擬機,然后再進行其他工作。 使用Docker,可以簡化為更易于管理的單個VM。

復制在開發中建立的生產所面臨的永恒挑戰突然變成現實。 容器本身可以在與機器上的其他容器對話的許可下啟動。 每個端口都可以擁有自己的單獨端口,這些端口可以公開開放,甚至可以共享基本操作系統的資源。

這就是Docker在啟用持續集成,交付和部署管道方面提供巨大幫助的原因。 實際情況如下:

  • 您的開發團隊能夠在易于編寫的Dockerfile中為微服務創建復雜的需求。
  • 將代碼推送到您的git repo。
  • 讓CI服務器將其拉下并構建EXACT環境,該環境將用于生產環境中以運行測試套件,而無需完全配置CI服務器。
  • 完成后將其全部拆除。
  • 將其部署到測試人員的暫存環境中,或僅通知測試人員,以便他們可以運行單個命令以在本地配置和啟動環境。
  • 放心地將您在開發,測試和過渡到生產中所擁有的一切完全滾動??,而無需擔心機器配置。

許多不同的單獨語言已采取步驟以在其語言的泡泡內實現這種類型的工作流程。 例如,Java擁有容器化的應用程序服務器已有十多年了,但是Docker在所有基于Linux的語言中都啟用了它。

那……是巨大的。

Docker不會消失

跳上“外觀,新技術流行語”潮流很容易,但是Docker仍然存在。 該行業正在全力以赴地對該技術進行重大投資,并且正在Swift采用。

當像Amazon這樣的公司發布自己的容器服務時, 像Tutum這樣的公司利用容器的可移植性來創建一個平臺,該平臺使您可以在AWS,Microsoft Azure,Digital Ocean的任何云提供商上使用Docker,甚至可以在您的服務器上對其進行自定義擁有。 順便說一下,Tutum最近剛剛被Docker收購 。

這就是Docker改變游戲規則的原因。 它解決了很多問題,這些問題阻礙了團隊有效地合作,并在降低成本的同時做到了。

翻譯自: https://www.javacodegeeks.com/2015/11/why-docker.html

總結

以上是生活随笔為你收集整理的为什么选择Docker?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。