Docker體系結(jié)構(gòu)
docker服務(wù)端莽龟,作為服務(wù)的提供方,核心進(jìn)程 docker daemon,所有docker命令都是通過這個(gè)進(jìn)程完成的
REST API:通信層,基于WEB容器提供http協(xié)議服務(wù)
docker CLI: 提供常用的docker命令
基于HTTP協(xié)議,docker的兼容性和擴(kuò)展性是特別好的
基于這種CS架構(gòu),對于應(yīng)用來說罩阵,最大的好處就是服務(wù)器與客戶端可以不用安裝在同一臺電腦上,可以跨機(jī)器管理多臺服務(wù)器,提高運(yùn)維效率
Docker命令
docker pull 鏡像名<:tags>
-從遠(yuǎn)程倉庫拉取鏡像docker images
- 查看本地鏡像docker run 鏡像名<:tags>
-創(chuàng)建容器启摄,啟動應(yīng)用docker ps
- 查看正在運(yùn)行中的鏡像docker version
- 查看docker版本docker rm <-f> 容器ID
- 刪除容器 -f 強(qiáng)制刪除稿壁,生產(chǎn)環(huán)境禁用強(qiáng)制刪除docker rmi <-f> 鏡像ID
- 刪除鏡像,-f強(qiáng)制刪除歉备,生產(chǎn)環(huán)境禁用強(qiáng)制刪除- `docker build -t 機(jī)構(gòu)/鏡像文件<:tags> Dockerfile目錄 - 編譯dockerfile鏡像配置文件,生成自定義鏡像文件
- `docker exec -it 容器id - 運(yùn)行docker容器
Docker執(zhí)行過程
- Docker Host是我們的docker宿主機(jī)
- Registry是docker拉取鏡像的遠(yuǎn)程倉庫,提供大量的鏡像供下載傅是,下載完成之后保存在Images中
- Docker Daemon是docker的服務(wù)線程,處理客戶端命令
- Images 是本地的鏡像倉庫,可以通過
docker images
查看 - Docker Daemon是docker的服務(wù)線程喧笔,處理客戶端命令
執(zhí)行過程
- 客戶端通過rest api 發(fā)送指令到 docker host的docker daemon進(jìn)程帽驯,
- Docker daemon進(jìn)程處理不同的指令,交將結(jié)果返回到客戶端
以docker pull 命令為例
- 客戶端通過rest api將指令發(fā)送給docker daemon
- docker daemon 先檢查本地images中有沒有相關(guān)的鏡像
- 如果本地沒有相關(guān)的鏡像书闸,則向鏡像服務(wù)器請求界拦,將遠(yuǎn)程鏡像下載到本地
- 返回客戶端
寫在最后
相關(guān)文章會首發(fā)公眾號,可以關(guān)注公號albk梗劫,關(guān)注后可以獲取大量學(xué)習(xí)視頻
期望熱愛技術(shù)的你一起來交流,獲取最新資料和學(xué)習(xí)資源截碴,可以關(guān)注公眾號albk, 個(gè)人博客 !