Docker學習1 基本概念

2022-07-02 11:48:12 字數 1782 閱讀 2144

docker的基本概念

docker是為開發人員和系統管理員而設計的以容器的形式開發、部署和執行應用程式的平台。使用linux容器去部署應用程式稱為容器化,利用容器部署應用程式方便簡單。容器化越來越受歡迎,因為容器:

靈活:即使是最複雜的應用也可以被貨櫃化;

輕量級:容器利用並共享主機核心;

可更換:可以即時部署更新和公升級;

可攜式:可以在本地構建,或部署到雲端,可以任何地方執行;

可擴充套件:可以增加並自動分發容器副本;

可堆疊:可以即時(on-the-fly)垂直的堆疊服務。

映象和容器

通過執行乙個映象啟動容器,映象是乙個可執行包,包含了執行應用程式所需的所有內容 **、執行時、庫、環境變數和配置檔案。當容器被執行時,映象在記憶體中就變成乙個映象的執行時例項 (即具有狀態的映象或使用者程序)。可以像在linux中一樣使用docker ps命令檢視正在執行的容器列表。

docker 命令導圖

從上圖中可以看出,docker 包含三個基本概念,分別是映象(image)、容器(container)和倉庫(repository)。映象是 docker 執行容器的前提,倉庫是存放映象的場所,可見映象更是docker的核心。docker 映象可以看作是乙個特殊的檔案系統,除了提供容器執行時所需的程式、庫、資源、配置等檔案外,還包含了一些為執行時準備的一些配置引數(如匿名卷、環境變數、使用者等)。在 dockerfile 中,每一條指令都會建立乙個映象層,繼而會增加整體映象的大小。映象不包含任何動態資料,其內容在構建之後也不會被改變。

容器和虛擬機器

容器生來在linux上執行,並與其他容器共享主機的核心,它執行乙個獨立的程序,不占用任何其他可執行檔案的記憶體,使其量級更輕。相比之下,虛擬機器(vm)執行乙個完整的客戶機guest作業系統,通過虛擬機器管理程式(hypervisor)對主機資源進行虛擬訪問。通常情況下,虛擬機器(vm)提供的環境比大多數應用程式所需要的資源更多。

容器與虛擬機器

hypervisor是一種執行在物理伺服器和作業系統之間的中間軟體層,可允許多個作業系統和應用共享一套基礎物理硬體,因此也可以看作是虛擬環境中的"元"作業系統,它可以協調訪問伺服器上的所有物理裝置和虛擬機器,也叫虛擬機器監視器(virtual machine monitor, vmm)。hypervisor是所有虛擬化技術的核心。非中斷地支援多工作負載遷移的能力是hypervisor的基本功能。當伺服器啟動並執行hypervisor時,它會給每一台虛擬機器分配適量的記憶體、cpu、網路和磁碟,並載入所有虛擬機器的客戶作業系統。

Docker學習筆記 1 基本概念

一.了解docker docker是乙個開源的引擎,可以輕鬆的為任何應用建立乙個輕量級的 可移植的 自給自足的容器。開發者在筆記本上編譯測試通過的容器可以批量地在生產環境中部署,包括vms 虛擬機器 bare metal openstack 集群和其他的基礎應用平台。docker通常用於如下場景 二...

Docker學習之基本概念

作為乙個後端noder,不了解docker有點說不過去,這節開始,學習一些docker層面的東西。docker最初是dotcloud公司創始人solomon hykes在法國期間發起的乙個公司內部專案,它是基於dotcloud 公司多年雲服務技術的一次革新,並於2013年3月以apache2.0授權...

Docker基本概念

docker是開發人員和系統管理員構建,發布和執行應用程式的平台。docker允許您快速使用元件組裝應用程式,並消除運送 時可能產生的改變。docker允許您盡快測試並將 部署到生產環境中。docker可以簡化軟體交付,是通過簡化構建包含應用程式整個環境或應用程式作業系統的映象,並共享這個映象。應用...