多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php框架 > 框架設計 > 42.docker簡介

42.docker簡介

來源:程序員人生   發布時間:2016-07-15 09:13:47 閱讀次數:4075次

今年京東的618活動,京東啟動了將近15萬個Docker容器,這些Docker容器用于商品頁,定單,搜索,緩存,數據庫等服務。

為啥docker能在京東南大學放異彩?

Docker自誕生以來就遭到極大的關注,縱觀國內的1線IT企業在雙101,春節,大促銷等活動紛紜上馬Docker的項目,Docker到底有甚么優點吸引這些企業。

傳統開發部署流程之痛

在互聯網企業,開發者完成某個功能需求后上線發布的流程以下。
由開發者在個人電腦上部署新的功能后獨自測試,測試終了后在測試服務器中部署新功能,再由公司內部的測試人員在測試服務器上測試,在測試服務器測試終了后再在生產服務器部署新功能,正式發布該功能。
這個流程如圖1所示。

這里寫圖片描述

圖1 完成功能需求的上線發布的流程

在圖1所示的流程中會產生下面1系列的問題。

  • 每臺計算機的Linux環境、JDK版本、PHP版本、Nginx版本、MySQL版本等不1致,有可能造成某些問題只是某臺計算機上出現,其他電腦沒法重現。
  • 某些開發環境搭建復雜,還要分別在個人計算機、測試服務器、生產服務器上搭建1次,里面有大量的重復勞動,效力低下。
  • 在個人計算機和測試服務器上有可能只是單機環境,到了生產服務器上變成了散布式環境,環境不1致致使部署方法不1致,造成在測試階段沒法發現問題。

Docker是1個用于統1開發和部署的輕量級容器,讓開發者打包其利用及相干的依賴包到1個可移植的容器,發布該容器到其他機器,就可以很容易地實現利用的部署。

Docker的原理

傳統的虛擬化技術體系在服務器操作系統上安裝了多個虛擬機,每一個虛擬機上通過虛擬化技術實現了1個虛擬操作系統,在這個虛擬操作系統上運行利用。傳統的虛擬化技術體系架構如圖3⑵0所示。

Docker的虛擬化技術體系在服務器的操作系統上有1個Docker服務在運行,在這個Docker服務上運行著多個Docker容器,每一個Docker容器中運行著利用,容器與容器間的利用是相互隔離、相互獨立的,但通過Docker服務占用著服務器的硬件和網絡資源。

這里寫圖片描述
圖2 傳統的虛擬化技術體系架構

Docker的虛擬化技術體系架構如圖3所示。
這里寫圖片描述
圖3 Docker的虛擬化技術體系架構

Docker利用虛擬化技術實現了1套從硬件到軟件的虛擬化環境,這個技術給運維和部署帶來的巨大的變革,利用虛擬化技術,真正遮蔽了外部因素的影響,保證了在任何1臺電腦中Docker容器里面的內容是1樣的。

網絡上介紹Docker的特點經常用的是集裝箱的比喻,但大多數同學對集裝箱帶來的革命性影響認識不深,因此我希望借助下面的例子來介紹docker帶來的巨大變革:

現在筆者在廣州工作,主要的活動地點是出租房和公司,每逢周末倍思親就回佛山老家。

筆者不在公司的時候,偶爾工作上有事情要處理,但這時候就有1個問題:習慣用的軟件都只安裝在公司的臺式機上,如果在出租房和佛山老家的電腦上處理工作上的事情,很多時候都要把經常使用的軟件再安裝1次,非常折騰~-~。

使用筆記本后就不1樣,如果筆者隨身帶著筆記本,需要處理工作上的事情時,不管在公司,出租房和佛山老家,只需要把筆記本插上電源,連接wifi,就可以隨時投入到工作中,不需要再重新安裝經常使用的軟件。

把公司,出租房,佛山老家看做是3個不同的工作環境(相當于服務器),沒有docker的時期,要在這3個不同的工作環境中工作,需要分別安裝所需的軟件,如果遇上由于環境之間有差異而釀成的運維問題(例如通過自動下載工具下載的軟件版本不1致),還要花大量的時間去排查。

 使用了docker后就簡單多了,在公司,出租房,佛山老家這3個不同的工作環境(相當于服務器)中,拿出筆記本(也就是docker容器),插上電源和連接wifi,就可以立刻投入到工作,不需要花時間去安裝各種軟件。

搭建1致的開發環境

Docker中有3個關鍵概念。
- 鏡像(Image):Docker鏡像(Image)類似于虛擬機鏡像,可以把其理解為Docker的只讀模板,其包括了文件系統。
- 容器(Container):Docker容器(Container)類似于1個沙箱,Docker使用容器隔離資源,并在其內部運行利用,可看成是1個簡易版的Linux環境。鏡像是只讀,容器從鏡像啟動后,Docker會在鏡像最上層創建1個可寫層,這樣鏡像本身就可以保持不變。
- 倉庫(Repository):Docker倉庫(Repository)類似于代碼倉庫,是Docker集中寄存鏡像文件的場所。

Docker倉庫里面包括了大量操作系統的基礎鏡像(例如CentOS、Ubuntu等),開發者從倉庫中拉取這些操作系統的基礎鏡像后就可以在其基礎之上構建本身環境的鏡像。

Docker提供了Dockerfile這類腳本給開發者創建自定義的鏡像。開發者通過Dockerfile,很容易在操作系統的基礎鏡像(例如CentOS、Ubuntu等)上安裝指定的軟件及其依賴,從而構建1個適用于本身業務環境的鏡像。

簡單來講,讀者可以把操作系統的基礎鏡像理解為1個干凈版操作系統,通過Dockerfile(相當于Linux上的安裝腳本)往這個干凈版操作系統上安裝需要的軟件后,再生成1個新的鏡像。

下面是1個Dockerfile的例子,運行這個Dockerfile就可以構建Java開發環境的Docker鏡像(Dockerfile來源:https://github.com/dockerfile/java/blob/master/oracle-java7/dockerfile)。

# 下載基礎鏡像 FROM dockerfile/ubuntu # 安裝Java. Run echo oracle-Java7-installer shared/accepted-oracle-license-v1-1 select true | debconf-set-selections && \ add-apt-Repository -y ppa:Webupd8team/Java && \ apt-get update && \ apt-get install -y oracle-Java7-installer && \ rm -rf /var/lib/apt/lists/* && \ rm -rf /var/cache/oracle-jdk7-installer # 定義工作目錄 WORKDIR /data # 定義JAVA_HOME環境變量 ENV JAVA_HOME /usr/lib/jvm/java-7-oracle # 定義默許的命令 CMD ["bash"]

使用Docker構建1致的開發環境是依賴于Dockerfile:把編寫完成的Dockerfile放置在版本管理服務器中,在不同的服務器上獲得這個Dockerfile并運行就可以構建相同的鏡像,從而得到1致的開發環境。這個流程如圖4所示。
這里寫圖片描述
圖4 用Docker構建開發環境流程

docker使用處景的思考

使用docker后,可以取得資源隔離,彈性擴大,簡化配置等好處,但docker真的合適每一個項目嗎?
雖然docker簡化了運維,但是docker本身也帶來了新的運維問題:例如怎樣部署1個docker集群,docker集群的監控,docker故障的排查等等,除這些問題外,在把docker引入項目中仔細斟酌下面的因素:

  • 工程師學習docker需要花費多少時間?
  • 這些時間投入能對項目的進展帶來正面影響嗎?
  • 如果docker在使用中出現了問題,有足夠的資源去解決這些問題嗎?

本人把網絡上發表的1系列“app后端”文章加以整理并增加了運維和架構方面的內容,出版了書籍《App 后臺開發運維和架構實踐》,該書已在京東,鐺鐺和亞馬遜上銷售。

《App后臺開發運維和架構實踐》的購買鏈接

京東

京東
鐺鐺
亞馬遜
互動出版網
天貓

打開鏈接 app后端設計–總目錄 ,能查看本人發表過的所有原創“app后端”文章。

【作者】曾健生
【QQ】190678908
【微信公眾號】 appbackend
【新浪微博】 @newjueqi
【博客】http://blog.csdn.net/newjueqi

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚洲精品99久久久久久欧美版 | 国产精品第一页在线观看 | 国产一区二区久久 | a中文字幕1区 | 亚洲综合精品一区二区三区中文 | 一二三四观看视频中文在线观看 | 免费观看影视传媒公司 | 免费观看一级欧美在线视频 | h在线免费观看 | 成人一区专区在线观看 | 亚洲天堂成人网 | 九色 在线 | 欧美精品播放 | 中文字幕欧美亚洲 | 一级毛片a女人刺激视频免费 | 2020在线不卡观看视频 | 日本视频不卡 | 日韩久久久精品中文字幕 | 国产素人在线 | 欧美巨大xxxx做受中文字幕 | 国产人成久久久精品 | www.啪| 国产免费久久精品99久久 | 日本aa大片在线播放免费看 | 精品一区二区三区四区在线 | 69做爰视频在线观看 | 久久综合久久精品 | 国产香蕉一区二区在线观看 | 91在线色 | 欧美一区精品二区三区 | 亚洲福利在线观看 | 五月天福利 | 好爽好大www视频在线播放 | www.久久久| 亚洲精品国产第一区二区多人 | 军人同志gayxxxx | 成人在线免费小视频 | 欧美最猛黑人xxxx黑人猛交3p | 在线综合亚洲欧美网站天堂 | 亚洲天堂成人 | 欧美另类69xxxxx免费 |