最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

容器生態(tài)系統(tǒng)

2023-04-13 18:58 作者:gzqhero  | 我要投稿

對于像容器這類平臺級別的技術(shù),通常涉及的知識范圍會很廣,相關(guān)的軟件,解決方案也會很多,初學(xué)者往往容易迷失。

那怎么辦呢?


我們可以從生活經(jīng)驗中尋找答案。
當(dāng)我們?nèi)ツ吧鞘新糜蜗肓私庖幌逻@個城市一般我們會怎么做?

我想大部分人應(yīng)該會打開手機看一下這個城市的地圖:

  1. 城市大概的位置和地理形狀是什么?

  2. 都由哪幾個區(qū)或縣組成?

  3. 主要的交通干道是哪幾條?

同樣的道理,學(xué)習(xí)容器技術(shù)我們可以先從天上鳥瞰一下:

  1. 容器生態(tài)系統(tǒng)包含哪些不同層次的技術(shù)?

  2. 不同技術(shù)之間是什么關(guān)系?

  3. 哪些是核心技術(shù)哪些是輔助技術(shù)?

首先得對容器技術(shù)有個整體認(rèn)識,之后我們的學(xué)習(xí)才能夠有的放矢,才能夠分清輕重緩急,做到心中有數(shù),這樣就不容易迷失了。

接下來我會根據(jù)自己的經(jīng)驗幫大家規(guī)劃一條學(xué)習(xí)路線,一起探索容器生態(tài)系統(tǒng)。

學(xué)習(xí)新技術(shù)得到及時反饋是非常重要的,所以我們馬上會搭建實驗環(huán)境,并運行第一個容器,感受什么是容器。

千里之行始于足下,讓我們從了解生態(tài)系統(tǒng)開始吧。

鳥瞰容器生態(tài)系統(tǒng)


一談到容器,大家都會想到 Docker。

Docker 現(xiàn)在幾乎是容器的代名詞。確實,是 Docker 將容器技術(shù)發(fā)揚光大。同時,大家也需要知道圍繞 Docker 還有一個生態(tài)系統(tǒng)。Docker 是這個生態(tài)系統(tǒng)的基石,但完善的生態(tài)系統(tǒng)才是保障 Docker 以及容器技術(shù)能夠真正健康發(fā)展的決定因素。

大致來看,容器生態(tài)系統(tǒng)包含核心技術(shù)、平臺技術(shù)和支持技術(shù)。

圖片

下面分別介紹。

容器核心技術(shù)


容器核心技術(shù)是指能夠讓 container 在 host 上運行起來的那些技術(shù)。

圖片

這些技術(shù)包括容器規(guī)范、容器 runtime、容器管理工具、容器定義工具、Registry 以及 容器 OS,下面分別介紹。

容器規(guī)范


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

圖片

目前 OCI 發(fā)布了兩個規(guī)范:runtime spec 和 image format spec。
有了這兩個規(guī)范,不同組織和廠商開發(fā)的容器能夠在不同的 runtime 上運行。這樣就保證了容器的可移植性和互操作性。

容器 runtime


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

如果大家用過 Java,可以這樣來理解 runtime 與容器的關(guān)系:

Java 程序就好比是容器,JVM 則好比是 runtime。JVM 為 Java 程序提供運行環(huán)境。同樣的道理,容器只有在 runtime 中才能運行。

圖片

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 的容器。

容器管理工具


光有 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。

容器定義工具


容器定義工具允許用戶定義容器的內(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 格式。

Registry


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

圖片

企業(yè)可以用 Docker Registry 構(gòu)建私有的 Registry。

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

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

容器 OS


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

圖片

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

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

容器生態(tài)系統(tǒng)的評論 (共 條)

分享到微博請遵守國家法律
鹤壁市| 皮山县| 九台市| 富蕴县| 尉氏县| 兴安盟| 资兴市| 清丰县| 河津市| 弋阳县| 永昌县| 临江市| 德州市| 东宁县| 中西区| 贡嘎县| 延津县| 扎囊县| 大同市| 卓资县| 哈尔滨市| 视频| 渭源县| 舞阳县| 永清县| 平定县| 白山市| 聊城市| 石林| 莱西市| 石嘴山市| 博湖县| 盐城市| 赫章县| 牙克石市| 曲阳县| 海原县| 台北县| 牡丹江市| 韩城市| 扎赉特旗|