真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Docker容器定義工具有哪些

本篇內(nèi)容介紹了“Docker容器定義工具有哪些”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

創(chuàng)新互聯(lián)公司歡迎聯(lián)系:18980820575,為您提供成都網(wǎng)站建設(shè)網(wǎng)頁設(shè)計及定制高端網(wǎng)站建設(shè)服務(wù),創(chuàng)新互聯(lián)公司網(wǎng)頁制作領(lǐng)域十多年,包括隧道混凝土攪拌車等多個領(lǐng)域擁有豐富的網(wǎng)站推廣經(jīng)驗,選擇創(chuàng)新互聯(lián)公司,為企業(yè)錦上添花。

1、容器規(guī)范

容器不光是 Docker,還有其他容器,比如 CoreOS 的 rkt。為了保證容器生態(tài)的健康發(fā)展,保證不同容器之間能夠兼容,包含 Docker、CoreOS、Google在內(nèi)的若干公司共同成立了一個叫 Open Container Initiative(OCI) 的組織,其目是制定開放的容器規(guī)范。

2、容器 runtime

runtime 是容器真正運行的地方。runtime 需要跟操作系統(tǒng) kernel 緊密協(xié)作,為容器提供運行環(huán)境。

  • lxc、runc 和 rkt 是目前主流的三種容器 runtime。

  • lxc 是 Linux 上老牌的容器 runtime。Docker 最初也是用 lxc 作為 runtime。

  • runc 是 Docker 自己開發(fā)的容器 runtime,符合 oci 規(guī)范,也是現(xiàn)在 Docker 的默認(rèn) runtime。

  • rkt 是 CoreOS 開發(fā)的容器 runtime,符合 oci 規(guī)范,因而能夠運行 Docker 的容器。

3、容器管理工具

光有 runtime 還不夠,用戶得有工具來管理容器啊。容器管理工具對內(nèi)與 runtime 交互,對外為用戶提供 interface,比如 CLI。這就好比除了 JVM,還得提供 java 命令讓用戶能夠啟停應(yīng)用不是。

  • lxd 是 lxc 對應(yīng)的管理工具。

  • runc 的管理工具是 docker engine。docker engine 包含后臺 deamon 和 cli 兩個部分。我們通常提到 Docker,一般就是指的 docker engine。

  • rkt 的管理工具是 rkt cli。

4、容器定義工具

容器定義工具允許用戶定義容器的內(nèi)容和屬性,這樣容器就能夠被保存,共享和重建。

  • docker image 是 docker 容器的模板,runtime 依據(jù) docker image 創(chuàng)建容器。

  • dockerfile 是包含若干命令的文本文件,可以通過這些命令創(chuàng)建出 docker image。

  • ACI (App Container Image) 與 docker image 類似,只不過它是由 CoreOS 開發(fā)的 rkt 容器的 image 格式。

5、Registry

容器是通過 image 創(chuàng)建的,需要有一個倉庫來統(tǒng)一存放 image,這個倉庫就叫做 Registry。

  • Docker Hub(https://hub.docker.com) 是 Docker 為公眾提供的托管 Registry,上面有很多現(xiàn)成的 image,為 Docker 用戶提供了極大的便利。

  • Quay.io(https://quay.io/)是另一個公共托管 Registry,提供與 Docker Hub 類似的服務(wù)。

6、容器 OS

由于有容器 runtime,幾乎所有的 Linux、MAC OS 和 Windows 都可以運行容器。但這不并沒有妨礙容器 OS 的問世。

容器 OS 是專門運行容器的操作系統(tǒng)。與常規(guī) OS 相比,容器 OS 通常體積更小,啟動更快。因為是為容器定制的 OS,通常它們運行容器的效率會更高。

目前已經(jīng)存在不少容器 OS,CoreOS、atomic 和 ubuntu core 是其中的杰出代表。

二、說說容器    

1、什么是容器

容器是一種輕量級、可移植、自包含的軟件打包技術(shù),使應(yīng)用程序可以在幾乎任何地方以相同的方式運行。開發(fā)人員在自己筆記本上創(chuàng)建并測試好的容器,無需任何修改就能夠在生產(chǎn)系統(tǒng)的虛擬機、物理服務(wù)器或公有云主機上運行。

Containers vs. virtual machines

容器在 Host 操作系統(tǒng)的用戶空間中運行,與操作系統(tǒng)的其他進程隔離。這一點顯著區(qū)別于的虛擬機。

傳統(tǒng)的虛擬化技術(shù),比如 VMWare, KVM, Xen,目標(biāo)是創(chuàng)建完整的虛擬機。為了運行應(yīng)用,除了部署應(yīng)用本身及其依賴(通常幾十 MB),還得安裝整個操作系統(tǒng)(幾 GB)。

Docker容器定義工具有哪些

虛擬機和容器的區(qū)別

由于所有的容器共享同一個 Host OS,這使得容器在體積上要比虛擬機小很多。另外,啟動容器不需要啟動整個操作系統(tǒng),所以容器部署和啟動速度更快,開銷更小,也更容易遷移。

2、為什么使用容器

如今的系統(tǒng)在架構(gòu)上較十年前已經(jīng)變得非常復(fù)雜了。以前幾乎所有的應(yīng)用都采用三層架構(gòu)(Presentation/Application/Data),系統(tǒng)部署到有限的幾臺物理服務(wù)器上(Web Server/Application Server/Database Server)。

而今天,開發(fā)人員通常使用多種服務(wù)(比如 MQ,Cache,DB)構(gòu)建和組裝應(yīng)用,而且應(yīng)用很可能會部署到不同的環(huán)境,比如虛擬服務(wù)器,私有云和公有云。

一方面應(yīng)用包含多種服務(wù),這些服務(wù)有自己所依賴的庫和軟件包;另一方面存在多種部署環(huán)境,服務(wù)在運行時可能需要動態(tài)遷移到不同的環(huán)境中。這就產(chǎn)生了一個問題:

如何讓每種服務(wù)能夠在所有的部署環(huán)境中順利運行?

聰明的技術(shù)人員從傳統(tǒng)的運輸行業(yè)找到了答案。

幾十年前,運輸業(yè)面臨著類似的問題。

每一次運輸,貨主與承運方都會擔(dān)心因貨物類型的不同而導(dǎo)致?lián)p失,比如幾個鐵桶錯誤地壓在了一堆香蕉上。另一方面,運輸過程中需要使用不同的交通工具也讓整個過程痛苦不堪:貨物先裝上車運到碼頭,卸貨,然后裝上船,到岸后又卸下船,再裝上火車,到達目的地,最后卸貨。一半以上的時間花費在裝、卸貨上,而且搬上搬下還容易損壞貨物。

幸運的是,集裝箱的發(fā)明解決這個難題。

打一個比方,集裝箱(容器)對于遠(yuǎn)洋運輸(應(yīng)用運行)來說十分重要。集裝箱(容器)能保護貨物(應(yīng)用),讓其不會相互碰撞(應(yīng)用沖突)而損壞,也能保障當(dāng)一些危險貨物發(fā)生規(guī)模不大的爆炸(應(yīng)用崩潰)時不會波及其它貨物(應(yīng)用)但是把貨物(應(yīng)用)裝載在集裝箱(容器)中并不是一件簡單的事情。而出色的碼頭工人(Docker)的出現(xiàn)解決了這一問題。它(Docker)使得貨物裝載到集裝箱(容器)這一過程變得輕而易舉。對于遠(yuǎn)洋運輸(應(yīng)用運行)而言,用多艘小貨輪(虛擬機)代替原來的大貨輪(實體機)也能保證貨物(應(yīng)用)彼此之間的安全,但是和集裝箱(容器)比,成本過高,但適合運輸某些重要貨物(應(yīng)用)。

任何貨物,無論鋼琴還是保時捷,都被放到各自的集裝箱中。集裝箱在整個運輸過程中都是密封的,只有到達最終目的地才被打開。標(biāo)準(zhǔn)集裝箱可以被高效地裝卸、重疊和長途運輸?,F(xiàn)代化的起重機可以自動在卡車、輪船和火車之間移動集裝箱。集裝箱被譽為運輸業(yè)與世界貿(mào)易最重要的發(fā)明。

Docker 將集裝箱思想運用到軟件打包上,為代碼提供了一個基于容器的標(biāo)準(zhǔn)化運輸系統(tǒng)。Docker 可以將任何應(yīng)用及其依賴打包成一個輕量級、可移植、自包含的容器。容器可以運行在幾乎所有的操作系統(tǒng)上。

其實,“集裝箱” 和 “容器” 對應(yīng)的英文單詞都是 “Container”。

“容器” 是國內(nèi)約定俗成的叫法,可能是因為容器比集裝箱更抽象,更適合軟件領(lǐng)域的原故吧。

3、容器的優(yōu)勢

對于開發(fā)人員

容器意味著環(huán)境隔離和可重復(fù)性。開發(fā)人員只需為應(yīng)用創(chuàng)建一次運行環(huán)境,然后打包成容器便可在其他機器上運行。另外,容器環(huán)境與所在的 Host 環(huán)境是隔離的,就像虛擬機一樣,但更快更簡單。

對于運維人員

只需要配置好標(biāo)準(zhǔn)的 runtime 環(huán)境,服務(wù)器就可以運行任何容器。這使得運維人員的工作變得更高效,一致和可重復(fù)。容器消除了開發(fā)、測試、生產(chǎn)環(huán)境的不一致性。

“Docker容器定義工具有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!


文章題目:Docker容器定義工具有哪些
本文鏈接:http://weahome.cn/article/pjodoi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部