日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Docker (3)核心概念

發布時間:2025/3/21 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Docker (3)核心概念 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. C/S架構

Docker 使用客戶端-服務器 (C/S) 架構模式,使用遠程API來管理和創建Docker容器。

2 核心模塊

概念說明
Docker 鏡像(Images)Docker 鏡像是用于創建 Docker 容器的模板,比如 Ubuntu 系統。
Docker 容器(Container)容器是獨立運行的一個或一組應用,是鏡像運行時的實體。
Docker 客戶端(Client)Docker 客戶端通過命令行或者其他工具使用
Docker SDK(https://docs.docker.com/develop/sdk/) 與 Docker 的守護進程通信。
Docker 主機(Host)一個物理或者虛擬的機器用于執行 Docker 守護進程和容器。
Docker RegistryDocker 倉庫用來保存鏡像,可以理解為代碼控制中的代碼倉庫。Docker Hub(https://hub.docker.com)提供了龐大的鏡像集合供使用。一個 Docker Registry 中可以包含多個倉庫(Repository);每個倉庫可以包含多個標簽(Tag);每個標簽對應一個鏡像。通常,一個倉庫會包含同一個軟件不同版本的鏡像,而標簽就常用于對應該軟件的各個版本。我們可以通過 <倉庫名>:<標簽> 的格式來指定具體是這個軟件哪個版本的鏡像。如果不給出標簽,將以 latest 作為默認標簽。
Docker MachineDocker Machine是一個簡化Docker安裝的命令行工具,通過一個簡單的命令行即可在相應的平臺上安裝Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。

2.1 核心概念

  • 鏡像(Image)
    Docker 鏡像(Image),就相當于是一個 root 文件系統。比如官方鏡像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系統的 root 文件系統。

  • 容器(Container)
    鏡像(Image)和容器(Container)的關系,就像是面向對象程序設計中的類和實例一樣,鏡像是靜態的定義,容器是鏡像運行時的實體。容器可以被創建、啟動、停止、刪除、暫停等。

  • 倉庫(Repository)
    倉庫可看成一個代碼控制中心,用來保存鏡像。Docker 倉庫可以分為公開倉庫( Public )和私有倉庫( Private)兩種形式。 eg. 最大的公開倉庫是官方提供的 Docker Hub ,其中存放著數量龐大的鏡像供用戶下載。

  • 倉庫注冊服務器
    存放倉庫的地方,其上往往存放著多個倉庫。 每個倉庫集中存放某一類鏡像,往往包括多個鏡像文件,通過不同的標簽( tag)來進行區分。

  • Docker 鏡像
    是一個特殊的文件系統,除了提供容器運行時所需的程序、庫、資源、配置等文件外,還包含了一些為運行時準備的一些配置參數(如匿名卷、環境變量、用戶等)。鏡像不包含任何動態數據,其內容在構建之后也不會被改變。

    2.2 分層存儲

Docker充分利用 Union FS 的技術,將其設計為分層存儲的架構。

  • 鏡像包含操作系統完整的 root 文件系統,其體積往往很大。
  • 嚴格來說,鏡像并非是像一個 ISO 那樣的打包文件,鏡像只是一個虛擬的概念,其實際體現并非由一個文件組成,而是由一組文件系統組成,或者說,由多層文件系統聯合組成。
  • 鏡像構建時,會一層層構建,前一層是后一層的基礎。每一層構建完就不會再發生改變,后一層上的任何改變只發生在自己這一層。比如,刪除前一層文件的操作,實際不是真的刪除前一層的文件,而是僅在當前層標記為該文件已刪除。在最終容器運行的時候,雖然不會看到這個文件,但是實際上該文件會一直跟隨鏡像。
  • 在構建鏡像的時候,需要額外小心,每一層盡量只包含該層需要添加的東西,任何額外的東西應該在該層構建結束前清理掉。

分層存儲的特征還使得鏡像的復用、定制變的更為容易。甚至可以用之前構建好的鏡像作為基礎層,然后進一步添加新的層,以定制自己所需的內容,構建新的鏡像。

總結

以上是生活随笔為你收集整理的Docker (3)核心概念的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。