溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Docker命令行與守護(hù)進(jìn)程的交互方法

發(fā)布時(shí)間:2020-10-13 14:31:01 來源:腳本之家 閱讀:160 作者:fundebug 欄目:服務(wù)器

為了保證可讀性,本文采用意譯而非直譯。另外,本文版權(quán)歸原作者所有,翻譯僅用于學(xué)習(xí)。

Docker并非單體應(yīng)用,它由多個(gè)組件構(gòu)成。這篇博客將介紹Docker守護(hù)進(jìn)程(daemon)與Docker命令行(CLI)。事實(shí)上,當(dāng)我們?cè)谡務(wù)摪惭b或使用Docker時(shí),所指的其實(shí)就是Docker守護(hù)進(jìn)程與命令行。

Docker架構(gòu)圖

Docker命令行與守護(hù)進(jìn)程的交互方法

解釋一下上圖中的元素:

Docker守護(hù)進(jìn)程(docker daemon)是運(yùn)行在你的操作系統(tǒng)上的一個(gè)服務(wù)。目前,它只能運(yùn)行在Linux上,因?yàn)樗蕾囉谝恍㎜inux內(nèi)核特性(比如Cgroup與Namespace)。 但是,也有一些特殊的辦法讓Docker運(yùn)行在MacOS與Windows上(運(yùn)行在Linux虛擬機(jī)中)。

Docker守護(hù)進(jìn)程提供了REST API。許多工具(Docker命令行,Docker Compose等)都可以通過REST API與Docker守護(hù)進(jìn)程進(jìn)行交互,例如創(chuàng)建容器,構(gòu)建鏡像等。

Docker命令行(docker CLI)是與Docker守護(hù)進(jìn)程進(jìn)行交互的主要工具。

Docker是C/S架構(gòu)

Docker是Client/Server架構(gòu)。其中Docker守護(hù)進(jìn)程是服務(wù)端,Docker命令行是眾多客戶端之一。事實(shí)上,還有很多第三方的Docker客戶端。

對(duì)于各種流行的編程語言,它們都有對(duì)應(yīng)的Docker客戶端。感興趣的話,你也可以開發(fā)一個(gè),使用REST API與Docker守護(hù)進(jìn)程進(jìn)行交互就好了。

通過客戶端,你可以管理Docker的各種元素,包括鏡像、容器、網(wǎng)絡(luò)以及數(shù)據(jù)卷。對(duì)于Docker感興趣的話,你不妨看看 Dive Into Docker course。

Docker命令行與守護(hù)進(jìn)程如何交互?

Docker命令行與守護(hù)進(jìn)程的交互方法

從左至右理解上圖:

最左側(cè)是Docker客戶端,即Docker命令行。我們可以運(yùn)行各種Docker命令,比如構(gòu)建鏡像(docker build),下載鏡像(docker pull),運(yùn)行容器(docker run)。Docker命令行可以安裝在各種操作系統(tǒng)上,例如Windows,MacOS或者Linux服務(wù)器。

中間是Docker主機(jī),Docker守護(hù)進(jìn)程運(yùn)行在上面。Docker命令行可以輕松地連接遠(yuǎn)程的Docker主機(jī)(給定IP和端口即可)。而在MacOS與Windows上"運(yùn)行"Docker時(shí),Docker守護(hù)進(jìn)程事實(shí)上運(yùn)行在Linux虛擬機(jī)中。這里關(guān)鍵點(diǎn)在于,Docker守護(hù)進(jìn)程和命令行可以運(yùn)行在不同的主機(jī)上。

最右側(cè)是Docker倉庫,它也是Docker生態(tài)系統(tǒng)中的一份子。它是我們下載、上傳、存儲(chǔ)以及分享Docker鏡像的地方。Docker倉庫的細(xì)節(jié)與本文無關(guān),因此不再贅述。

譯者按: Docker是典型的C/S架構(gòu),其守護(hù)進(jìn)程(daemon)與命令行(CLI)是通過REST API進(jìn)行交互的。

原文: Understanding how the Docker Daemon and Docker CLI Work Together

譯者: Fundebug

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI