docker是乙個開源的容器專案,基於go語言開發。之所以被稱為容器技術,是因為docker對程序進行封裝,隔離於宿主系統和其它的程序,類似於乙個裝東西的容器,而且在容器裡面裝有一系列檔案系統、網路、依賴包等應用程式執行需要的環境,開發人員可以快速將他們的應用程式部署到容器內執行。容器技術屬於作業系統層面的虛擬化技術,它和虛擬機器技術主要的區別如下:
docker核心概念
容器技術的核心概念有容器(container)、映象(image)、倉庫(registry)三個。
容器:具體的執行應用程式的乙個程序,它裡面包含應用程式的各種依賴。
映象:建立容器的模板,根據不同配置的映象來建立不同的容器使用。映象和容器的關係可以理解為物件導向中類和例項物件的關係。
docker架構
docker框架主要由docker client、docker daemon、docker registry、driver、docker container五個模組組成,另外還有graph和libcontainer兩個輔助模組,如下圖所示:
docker client: 使用者通過docker client與docker daemon進行通訊,利用命令列傳送建立映象、執行容器之類的請求。
docker daemon:docker daemon是docker架構中乙個常駐在後台的系統程序,接受並處理docker client傳送的請求。該守護程序在後台啟動了乙個server,server負責接受docker client傳送的請求;然後通過路由與分發排程,找到相應的handler來執行請求。
docker registry:儲存容器映象的倉庫。
driver: driver是docker架構中的驅動模組。通過driver驅動,docker可以實現對docker容器執行環境的定製。包含管理容器映象的graphdriver驅動,配置容器內網路環境的networkdriver驅動,execdriver用來建立和維護容器。
docker container:執行應用程式的特定容器,是容器服務的交付實體。
Docker基本概念
docker是開發人員和系統管理員構建,發布和執行應用程式的平台。docker允許您快速使用元件組裝應用程式,並消除運送 時可能產生的改變。docker允許您盡快測試並將 部署到生產環境中。docker可以簡化軟體交付,是通過簡化構建包含應用程式整個環境或應用程式作業系統的映象,並共享這個映象。應用...
Docker基本概念
docker 包括三個基本概念 理解了這三個概念,就理解了 docker 的整個生命週期。docker 映象就是乙個唯讀的模板。例如 乙個映象可以包含乙個完整的 ubuntu 作業系統環境,裡面僅安裝了 apache 或使用者需要的其它應用程式。映象可以用來建立 docker 容器。docker 利...
docker基本概念
集群 乙個集群指容器執行所需要的雲資源組合,關聯了若干伺服器節點 負載均衡 專有網路等雲資源。節點 一台伺服器 可以是虛擬機器例項或者物理伺服器 已經安裝了 docker engine,可以用於部署和管理容器 容器服務的 agent 程式會安裝到節點上並註冊到乙個集群上。集群中的節點數量可以伸縮。容...