中文字幕av高清_国产视频一二区_男女羞羞羞视频午夜视频_成人精品一区_欧美色视_在线视频这里只有精品

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術(shù)干貨  > 什么是 Docker、鏡像、編排?

什么是 Docker、鏡像、編排?

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-10-13 09:35:29 1697160929

一、什么是 Docker、鏡像、編排

Docker是一種容器技術(shù),允許開發(fā)人員將應用程序與相關的依賴關系打包在一起以形成可移植的鏡像,并通過容器來部署這些鏡像。

鏡像是一個只讀的模板,用于創(chuàng)建Docker 容器。鏡像是由操作系統(tǒng)、應用程序和其他相關依賴項打包而成,在Docker中使用多層文件系統(tǒng)來存儲,并且鏡像之間可以通過共享層文件來提高效率。Docker鏡像是由一系列的層組成的,每一層都是對上一層的增量修改。每一層都有一個少數(shù)的ID,可以通過加密哈希算法或者隨機數(shù)生成。docker鏡像的所有層都是只讀的,不能被修改,只能通過創(chuàng)建新的層來改變。Docker容器是基于Docker鏡像運行的實例,它在鏡像的最上面添加了一個可讀寫的容器層。容器層保存了容器運行時的所有數(shù)據(jù)變化,如新建文件,修改文件等。刪除容器后,容器層也會被刪除,而基礎鏡像則保持不變。Docker使用了棧式層管理和寫時復制的技術(shù)來實現(xiàn)鏡像和容器的存儲。棧式層管理是指每一層都是從下往上,以棧的方式組合在一起,組成鏡像或者容器的根文件系統(tǒng)。寫時復制是指當需要修改某一層的數(shù)據(jù)時,不直接修改原始數(shù)據(jù),而是將修改后的數(shù)據(jù)保存在一個新的層中。這樣可以提高效率和安全性,也可以實現(xiàn)鏡像層之間的共享。

編排是 Docker 容器中的一個重要概念,它是一種將多個容器組織在一起以形成分布式應用程序的技術(shù)。在 Docker 中,編排描述了容器如何協(xié)同工作以支持應用程序。例如,可以通過 Docker Compose 工具來定義和運行多個容器,使它們能夠相互通信以實現(xiàn)應用程序的功能。Docker編排通常包括以下方面:

容器編排:為多個容器指定數(shù)量、配置和啟動順序,并保證它們之間的關系。網(wǎng)絡編排:將容器組建成一個網(wǎng)絡,并配置容器之間的通信策略。存儲編排:為容器配置卷(volume)或者本地主機的文件目錄,并關聯(lián)到不同的容器中。

二、Docker詳細介紹

1、簡介

Docker 是一個開源的應用容器引擎,讓開發(fā)者可以打包他們的應用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的Linux或Windows操作系統(tǒng)的機器上,也可以實現(xiàn)虛擬化,容器是完全使用沙箱機制,相互之間不會有任何接口。一個完整的Docker有以下幾個部分組成:

DockerClient客戶端Docker Daemon守護進程Docker Image鏡像DockerContainer容器

2、起源

Docker 是?PaaS?提供商 dotCloud 開源的一個基于?LXC?的高級容器引擎,源代碼托管在?Github?上,基于go語言并遵從Apache2.0協(xié)議開源。

Docker自2013年以來非常火熱,無論是從 github 上的代碼活躍度,還是Redhat在RHEL6.5中集成對Docker的支持,就連?Google?的 Compute Engine 也支持 docker 在其之上運行。

一款開源軟件能否在商業(yè)上成功,很大程度上依賴三件事——成功的 user case(用例),活躍的社區(qū)和一個好故事。 dotCloud 之家的 PaaS 產(chǎn)品建立在docker之上,長期維護且有大量的用戶,社區(qū)也十分活躍,接下看看docker的故事。

環(huán)境管理復雜:從各種OS到各種中間件到各種app,一款產(chǎn)品能夠成功作為開發(fā)者需要關心的東西太多,且難于管理,這個問題幾乎在所有現(xiàn)代IT相關行業(yè)都需要面對。云計算時代的到來:AWS的成功,引導開發(fā)者將應用轉(zhuǎn)移到 cloud 上,解決了硬件管理的問題,然而中間件相關的問題依然存在(所以openstack HEAT和 AWS cloudformation 都著力解決這個問題)。開發(fā)者思路變化提供了可能性。虛擬化手段的變化:cloud 時代采用標配硬件來降低成本,采用虛擬化手段來滿足用戶按需使用的需求以及保證可用性和隔離性。然而無論是KVM還是Xen在 docker 看來,都在浪費資源,因為用戶需要的是高效運行環(huán)境而非OS,GuestOS既浪費資源又難于管理,更加輕量級的LXC更加靈活和快速。LXC的移動性:LXC在 linux 2.6 的 kernel 里就已經(jīng)存在了,但是其設計之初并非為云計算考慮的,缺少標準化的描述手段和容器的可遷移性,決定其構(gòu)建出的環(huán)境難于遷移和標準化管理(相對于KVM之類image和snapshot的概念)。docker 就在這個問題上做出實質(zhì)性的革新。這是docker最獨特的地方。

面對上述幾個問題,docker設想是交付運行環(huán)境如同海運,OS如同一個貨輪,每一個在OS基礎上的軟件都如同一個集裝箱,用戶可以通過標準化手段自由組裝運行環(huán)境,同時集裝箱的內(nèi)容可以由用戶自定義,也可以由專業(yè)人員制造。這樣,交付一個軟件,就是一系列標準化組件的集合的交付,如同樂高積木,用戶只需要選擇合適的積木組合,并且在最頂端署上自己的名字(最后一個標準化組件是用戶的app)。這也就是基于docker的PaaS產(chǎn)品的原型。

3、特性

在docker的網(wǎng)站上提到了docker的典型場景:

Automating the packaging and deployment of applications(使應用的打包與部署自動化)Creation of lightweight, private PAAS environments(創(chuàng)建輕量、私密的PAAS環(huán)境)Automated testing and continuous integration/deployment(實現(xiàn)自動化測試和持續(xù)的集成/部署)Deploying and scaling web apps, databases and backend services(部署與擴展webapp、數(shù)據(jù)庫和后臺服務)

由于其基于LXC的輕量級虛擬化的特點,docker相比KVM之類最明顯的特點就是啟動快,資源占用小。因此對于構(gòu)建隔離的標準化的運行環(huán)境,輕量級的PaaS(如dokku),構(gòu)建自動化測試和持續(xù)集成環(huán)境,以及一切可以橫向擴展的應用(尤其是需要快速啟停來應對峰谷的web應用)。

構(gòu)建標準化的運行環(huán)境,現(xiàn)有的方案大多是在一個baseOS上運行一套puppet/chef,或者一個image文件,其缺點是前者需要base OS許多前提條件,后者幾乎不可以修改(因為copy on write 的文件格式在運行時rootfs是read only的)。并且后者文件體積大,環(huán)境管理和版本控制本身也是一個問題PaaS環(huán)境是不言而喻的,其設計之初和dotcloud的案例都是將其作為PaaS產(chǎn)品的環(huán)境基礎因為其標準化構(gòu)建方法(buildfile)和良好的REST API,自動化測試和持續(xù)集成/部署能夠很好的集成進來因為LXC輕量級的特點,其啟動快,而且docker能夠只加載每個container變化的部分,這樣資源占用小,能夠在單機環(huán)境下與KVM之類的虛擬化方案相比能夠更加快速和占用更少資源

4、局限

Docker并不是全能的,設計之初也不是KVM之類虛擬化手段的替代品,簡單總結(jié)幾點:

Docker是基于Linux 64bit的,無法在32bit的linux/Windows/unix環(huán)境下使用LXC是基于cgroup等linux kernel功能的,因此container的guest系統(tǒng)只能是linux base的隔離性相比KVM之類的虛擬化方案還是有些欠缺,所有container公用一部分的運行庫網(wǎng)絡管理相對簡單,主要是基于namespace隔離cgroup的cpu和cpuset提供的cpu功能相比KVM的等虛擬化方案相比難以度量(所以dotcloud主要是按內(nèi)存收費)Docker對disk的管理比較有限container隨著用戶進程的停止而銷毀,container中的log等用戶數(shù)據(jù)不便收集

5、原理

Docker核心解決的問題是利用LXC來實現(xiàn)類似VM的功能,從而利用更加節(jié)省的硬件資源提供給用戶更多的計算資源。同VM的方式不同,LXC?其并不是一套硬件虛擬化方法——無法歸屬到全虛擬化、部分虛擬化和半虛擬化中的任意一個,而是一個操作系統(tǒng)級虛擬化方法,理解起來可能并不像VM那樣直觀。所以可以從虛擬化到docker要解決的問題出發(fā),看看docker是怎么滿足用戶虛擬化需求的。用戶需要考慮虛擬化方法,尤其是硬件虛擬化方法,需要借助其解決的主要是以下4個問題:

隔離性:每個用戶實例之間相互隔離,互不影響。 硬件虛擬化方法給出的方法是VM,LXC給出的方法是container,更細一點是kernel namespace可配額/可度量:每個用戶實例可以按需提供其計算資源,所使用的資源可以被計量。硬件虛擬化方法因為虛擬了CPU,memory可以方便實現(xiàn),LXC則主要是利用cgroups來控制資源移動性:用戶的實例可以很方便地復制、移動和重建。硬件虛擬化方法提供snapshot和image來實現(xiàn),docker(主要)利用AUFS實現(xiàn)安全性:這個話題比較大,這里強調(diào)是host主機的角度盡量保護container。硬件虛擬化的方法因為虛擬化的水平比較高,用戶進程都是在KVM等虛擬機容器中翻譯運行的,然而對于LXC,用戶的進程是lxc-start進程的子進程,只是在Kernel的namespace中隔離的,因此需要一些kernel的patch來保證用戶的運行環(huán)境不會受到來自host主機的惡意入侵,dotcloud(主要是)利用kernel grsec patch解決的

延伸閱讀1:Docker安全中心

在新的功能中有硬件的部分,可以 跨任何基礎架構(gòu),允許開發(fā)和隨后的升級中的數(shù)字編碼簽名。構(gòu)建在Docker Trust框架之上用來進行鏡像發(fā)布者認證,同時進行新的鏡像掃描和官方漏洞檢測,以便能夠更好地理解容器內(nèi)部是什么。命名空間是本周發(fā)布的另外一個Docker安全升級。允許IT運用來為基于用戶群組的容器指派授權(quán),約束了主機的訪問根源,并指定了系統(tǒng)管理員,限制了群組對于指定服務的訪問。鏡像掃描對于Docker Hub上的所有官方版本都可用,同時命名空間和硬件簽名則在Docker的實驗渠道提供。安全問題仍舊是容器采納要解決的最大問題,尤其是如果大量容器是便攜的,IDC研究經(jīng)理Larry Carvalho說道。通過硬件解決這個問題很明智,因為這樣更難以介入,并且提供了未來可能被使用的大量容器的效率。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
Access數(shù)據(jù)庫怎樣免費下載?

一、Access數(shù)據(jù)庫免費下載的方法1、Microsoft官方網(wǎng)站訪問Microsoft官方網(wǎng)站,進入”O(jiān)ffice”或”Access”的頁面。Microsoft通常提供試用版本或...詳情>>

2023-10-13 11:29:41
千萬級用戶的實時問答網(wǎng)站用什么語言,數(shù)據(jù)庫和服務器有什么要求?

一、千萬級用戶的實時問答網(wǎng)站用什么語言,數(shù)據(jù)庫和服務器有什么要求語言方面,可以選擇像 Java、Python、Go 等支持高并發(fā)的編程語言。其中,Ja...詳情>>

2023-10-13 11:20:16
Ecoinvent數(shù)據(jù)庫中,Cut-off、Conseq和APOS三種類型的數(shù)據(jù)使用區(qū)別在哪兒?

一、Ecoinvent數(shù)據(jù)庫中,Cut-off、Conseq和APOS三種類型的數(shù)據(jù)使用區(qū)別跟系統(tǒng)邊界/分配方法有關,之前看到過有人推薦使用cut-off就可以了。附以...詳情>>

2023-10-13 11:08:36
為什么二級封鎖協(xié)議不能保證可重復讀,一級封鎖協(xié)議不能保證可重復讀和讀臟數(shù)據(jù)?

一、為什么二級封鎖協(xié)議不能保證可重復讀排它鎖又叫寫鎖,事務A對數(shù)據(jù)D加了排它鎖,其它任何事務都不能再對數(shù)據(jù)D加共享鎖或者排它鎖。也就是說A...詳情>>

2023-10-13 11:01:05
用access做一個數(shù)據(jù)庫,用戶登錄界面,不同用戶權(quán)限不同,應該怎么設置?

一、用access做一個數(shù)據(jù)庫,用戶登錄界面,不同用戶權(quán)限不同用access做一個數(shù)據(jù)庫,用戶登錄界面,不同用戶權(quán)限不同,應該設置三張表:用戶表,...詳情>>

2023-10-13 10:57:31
主站蜘蛛池模板: 欧美午夜在线 | 精品久久久久久久久久久久 | 久久久精品网站 | 免费福利片2020潦草影视午夜 | 久久国产精品久久久久久 | 欧美激情a∨在线视频播放 欧美一级艳片视频免费观看 | 久久久久久久久久久久久九 | 久久久欧美 | 欧美视频区 | 草在线视频 | 久久精品久久久 | 美女毛片免费看 | 久草久草久| 日韩在线资源 | 中午字幕在线观看 | 国产一区 | 日韩成人片 | 暖暖日本在线视频 | 91嫩草在线 | www色婷婷 | 日韩成人免费在线 | 国产情侣一区二区三区 | 亚洲精品成人久久久 | 久久久国产精品 | 中文字幕视频二区 | 久久4 | 电影午夜精品一区二区三区 | 在线视频偷国产精品 | 成人在线不卡 | 波多野结衣一二三四区 | 久久成人免费 | 久久a v视频 | 玖玖玖影院 | 日韩av黄色 | 天天综合久久 | 欧美激情精品久久久久 | 午夜一区二区三区在线观看 | 50人群体交乱视频 | 欧美成人一区二区三区片免费 | 日韩三级电影在线免费观看 | 91香蕉嫩草 |