【Docker系列】——(一)Docker概述

1. Docker概述

1.1. Docker簡介

Docker 是一個開源的應用容器引擎,基於 Go 語言開發。Docker 可以讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,然後發佈到任何流行的 Linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口(類似 iPhone 的 app),更重要的是容器性能開銷極低。

  • Docker應用場景
    • Web 應用的自動化打包和發佈
    • 自動化測試和持續集成、發佈
    • 在服務型環境中部署和調整數據庫或其他的後臺應用

使用Docker可以實現開發人員的開發環境、測試人員的測試環境、運維人員的生產環境的一致性。

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-lhc6f5Pq-1577542004131)(1.png)]

Docker借鑑了標準集裝箱的概念。標準集裝箱將貨物運往世界各地,Docker將這個模型運用到自己的設計中,唯一不同的是:集裝箱運輸貨物,而Docker運輸軟件。

1.2. Docker容器與傳統虛擬機比較

  • 傳統虛擬機

傳統虛擬機

傳統虛擬機技術基於安裝在主操作系統上的虛擬機管理系統(如:VirtualBox和VMWare等),創建虛擬機(虛擬出各種硬件),在虛擬機上安裝從操作系統,在從操作系統中安裝部署各種應用。

  • Docker

Docker

Docker容器是在操作系統層面上實現虛擬化,直接複用本地主機的操作系統,而傳統虛擬機則是在硬件層面實現虛擬化。與傳統的虛擬機相比,Docker優勢體現爲啓動速度快、佔用體積小。

1.3. Docker組成部分

Docker組成

名稱 說明
Docker 鏡像(Images) Docker 鏡像是用於創建 Docker 容器的模板。 鏡像是基於聯合文件系統的一種層式結構,由一系列指令一步一步構建出來。
Docker 容器(Container) 容器是獨立運行的一個或一組應用。鏡像相當於類,容器相當於類的實例
Docker 客戶端(Client) Docker 客戶端通過命令行或者其他工具使用 Docker API 與 Docker 的守護進程通信。
Docker 主機(Host) 一個物理或者虛擬的機器用於執行 Docker 守護進程和容器。
Docker守護進程 是Docker服務器端進程,負責支撐Docker 容器的運行以及鏡像的管理
Docker 倉庫DockerHub(Registry) Docker 倉庫用來保存鏡像,可以理解爲代碼控制中的代碼倉庫。 Docker Hub提供了龐大的鏡像集合供使用。用戶也可以將自己本地的鏡像推送到Docker倉庫供其他人下載。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章