Docker知識學習

2021-10-20 19:18:39 字數 1556 閱讀 9488

docker是乙個開源的容器引擎,讓開發者可以打包他們的應用程式以及依賴包到乙個可移植的映象中,然後發布到任何流行的linux或windows機器上,dockers也可實現虛擬化,容器是完全使用沙箱機制,相互之間不會有任何介面。

乙個完整的docker有以下幾個部分組成:

dockerclient客戶端

docker daemon守護程序

docker image映象

dockercontainer容器

docker 使用客戶端-伺服器 (c/s) 架構模式,使用遠端api來管理和建立docker容器。docker 容器通過 docker 映象來建立。容器與映象的關係類似於物件導向程式設計中的物件與類。

docker採用 c/s架構 docker daemon 作為服務端接受來自客戶的請求,並處理這些請求(建立、執行、分發容器)。 客戶端和服務端既可以執行在乙個機器上,也可通過 socket 或者restful api 來進行通訊。

docker daemon 一般在宿主主機後台執行,等待接收來自客戶端的訊息。 docker 客戶端則為使用者提供一系列可執行命令,使用者用這些命令實現跟 docker daemon 互動。

docker映象一run就生成為docker容器。

docker對系統資源的利用率非常高,乙個主機上可以執行上千個docker容器。

傳統的虛擬機器要部署10個不用的應用需要起10臺虛擬機器,而docker只需要起10個容器即可。

docker容器是乙個系統級別的服務,擁有自己的ip和系統目錄結構。

docker是基於linux 64bit的,無法在32bit的linux/windows/unix環境下使用。

傳統的虛擬機器 技術是虛擬出一整套硬體後再在其上安裝乙個完整的作業系統,在該作業系統上執行所需應用。

lxc:(linux contaniner)linux容器虛擬技術。

容器和虛擬機器的對比:

docker技術的三大核心概念:映象、容器、倉庫。

docker容器後台執行就必須有乙個前台程序,容器的命令如果不是那些一直掛起的命令(如top,tail)就會自動閃退,因為他覺得沒事做了就會自動自殺,這是docker的機制問題。

docker logs [option] container_id:檢視指定容器的日誌資訊

–tail n :檢視日誌末尾n行,不加n表示all.

-t:顯示時間戳

-f :持續追蹤日誌

docker top container_id:顯示指定正在執行的容器程序資訊

使用portainer管理容器

先執行portainer:docker run -it -d -p 9000:9000 --restart=always --name portainer -v /var/run/docker.sock:/var/run/docker.sock 2869fc110bf7

網頁開啟:

docker基礎知識 docker學習知識

學習任何乙個開源新技術,首先問自己幾個問題 1.為什要學習它?2.學習它需要了解哪些相關知識點?3.如何快速學習?4.該技術的使用場景是什麼?為什要學習docker?docker是輕量級虛擬化技術,docker使linux容器技術的應用更加簡單和標準化 docker容器啟動時毫秒級的 docker將...

docker學習筆記 小知識

零 加入docker使用者組 在使用非管理員賬戶登入作業系統,操作docker的時候需要切換到管理員的身份,每次都這樣操作會比較麻煩,所以可以將當前使用者加入到docker 使用者組,如下 sudo usermod ag docker user name一 配置啟動項 doker 服務啟動呼叫的是d...

docker學習筆記 小知識

零 加入docker使用者組 在使用非管理員賬戶登入作業系統,操作docker的時候需要切換到管理員的身份,每次都這樣操作會比較麻煩,所以可以將當前使用者加入到docker 使用者組,如下 sudo usermod ag docker user name一 配置啟動項 doker 服務啟動呼叫的是d...