1. 程式人生 > 其它 >Docker入門系列之二:Docker術語

Docker入門系列之二:Docker術語

容器的崛起是當今科技領域最重要的趨勢之一。本文將分享Docker生態系統中的常用的術語。

原文作者:Jeff Hale

原文地址:https://towardsdatascience.com/learn-enough-docker-to-be-useful-1c40ea269fa8

翻譯:付新圓

在本系列的第1部分《Docker-第1部分:什麼是Docker?》我們探討了Docker容器的概念以及Docker容器的重要性,文章的最後我們把Docker類比成了一個披薩,並把它拆解開來解釋Docker容器的結構和用途。在本文中,將分享Docker生態系統中的常用的術語。

遵循本系列第一篇文章中的食品主題,這裡我們將甜甜圈想象成一個Docker容器。

Docker生態系統術語

為了方便大家理解,我將Docker術語分為兩類:基礎術語和進階術語。

Docker 基礎術語

1.Docker平臺

Docker平臺是Docker的軟體,可在任何Linux伺服器上的容器中打包和執行應用程式。Docker平臺捆綁了程式碼檔案和依賴項,支援可移動性和可重複性來促進平臺擴充套件。

2.Docker引擎

Docker引擎是客戶端伺服器應用程式。Docker公司將Docker引擎分為兩種產品。

圖:引擎讓事情運轉

3.Docker客戶端

Docker客戶端是許多Docker使用者與Docker互動的主要方式。使用

Docker命令列介面(CLI)時,請在終端中輸入以docker開頭的命令,然後Docker客戶端使用Docker API將命令傳送到Docker Daemon。

圖:Docker文件中的圖表

4.Docker Daemo

Docker Daemo是偵聽Docker API請求的Docker伺服器,管理映像、容器、網路和卷。

5.Docker卷

Docker卷是儲存應用程式消耗和建立的持久資料的最佳方式。在本系列的第5部分中,我們將對Docker捲進行更多的討論。

圖:卷

6.Docker 登錄檔

Docker登錄檔是儲存Docker映像的遠端位置,將影象推送到登錄檔並從登錄檔中提取影象,可以託管登錄檔或使用提供程式的登錄檔。例如,AWS和googlecloud都有註冊。

7.Docker Hub

Docker Hub是Docker映像的最大登錄檔,也是預設登錄檔。您可以在Docker Hub上免費查詢圖片並存儲圖片。

圖:輪轂和輻條

8.Docker 儲存庫

Docker 儲存庫是具有相同名稱和不同標籤的Docker影象的集合,該標籤是影象識別符號。

通常,一個儲存庫具有同一映像的不同版本。例如,Python是Docker Hub上最流行的官方Docker映像儲存庫的名稱。Python:3.7-slim 指的是Python儲存庫中帶有3.7-slim標籤的影象版本。您可以將儲存庫或單個映像推送到登錄檔。

Docker 進階術語

接下來我們看一下與擴充套件多個Docker容器有關的Docker術語,以下四個概念涉及一次使用多個容器。

1.網路容器

網路容器可以將Docker容器連線在一起,連線的Docker容器可以位於同一主機或多個主機上。有關Docker網路的更多資訊,請參閱這篇文章

圖:Docker網路

2.Docker Compose

Docker Compose是一種工具,可讓您更輕鬆地執行需要多個Docker容器的應用程式。Docker Compose允許您將命令移動到docker-compose.yml檔案中以供重用。Docker Compose命令列介面(cli)使與多容器應用程式的互動變得更加容易。Docker Compose隨您的Docker安裝一起免費提供。

3.Docker Swarm

Docker Swarm是用於協調容器部署的產品。Docker官方教程的第四部分介紹了Docker Swarm。

圖:蜂群

4.Docker 服務

Docker服務是分散式應用程式的不同部分。

服務實際上只是“生產中的容器”。一個服務僅執行一個映像,但它規定了映像的執行方式—應該使用什麼埠,應該執行多少個容器副本,這樣服務就有了它需要的容量,等等。擴充套件服務會更改執行該軟體的容器例項的數量,從而在流程中為服務分配更多的計算資源。

Docker服務允許您跨多個Docker Daemon擴充套件容器,並使Docker Swarms成為可能。

回顧

以下用一行文字總結以幫助你理清這十幾個術語。

基本

  • 平臺—使Docker容器成為可能的軟體
  • 引擎—客戶端伺服器應用程式(CE或Enterprise)
  • 客戶端—處理Docker CLI,以便您可以與守護程式進行通訊
  • Daemon—Docker伺服器,管理關鍵內容
  • 卷—持久資料儲存
  • 登錄檔—遠端映像儲存
  • Docker Hub—預設和最大的Docker 登錄檔
  • 儲存庫—Docker影象的集合,例如Alpine

縮放比例

  • 網路—將容器連線在一起
  • 撰寫—節省多容器應用程式的時間
  • Swarm—協調容器部署
  • 服務—生產中的集裝箱

因為我們遵循食物的隱喻,所以我們為引入了另一個相關術語:Kubernetes。

圖:再加一層甜甜圈並灑上糖果

Kubernetes自動執行容器化應用程式的部署、擴充套件和管理。它是容器編排市場的贏家,代替Docker Swarm,使用Kubernetes來擴充套件具有多個Docker容器的專案。Kubernetes不是Docker的官方部分,它更像是Docker的BFF。

圖:Kubernetes

現在您已經瞭解了Docker的概念和常用術語,那麼我建議您嘗試使用Docker。

使用Docker

Docker在Linux、Mac和Windows上本地執行。如果您使用的是Mac或Windows計算機,請在此處安裝最新穩定版本的Docker Desktop。作為獎勵,它附帶Kubernetes。如果要在其他地方安裝Docker,請轉到此處查詢所需的版本。

安裝Docker之後,執行Docker教程的前兩部分。

總結

以上就是關於Docker的十二個術語的相關內容。在本系列的下三個部分中,我們將深入研究Dockerfile指令,請持續關注我們。


本文由豬齒魚技術團隊原創,轉載請註明出處:豬齒魚官網