Docker容器管理

2021-10-22 00:06:38 字數 2272 閱讀 3257

docker 基本概念

docker 三個重要概念:倉庫 (repository)、映象 (image) 和 容器 (container)

倉庫:存放映象的所在位置

映象:環境的封裝

容器:展開以後的執行環境;(模擬於虛擬機器)

舉例:docker run --name mywordpress --link db:mysql -p 8080:80 -d wordpress

docker run:從映象執行為容器

–name:指定當前的容器名稱,不指定隨機字串

–link:將自己的容器位址寫入host檔案解析,並且做別名(上述為mysql)

-p:將物理機的8080埠對映到容器中的80埠

-d:放入後台執行

wordpress:指定映象名稱,沒有加版本號預設latest

docker 指令的基本用法:

docker + 命令關鍵字(command) + 一系列的引數

基礎命令

docker 指令除了單條使用外,還支援賦值、解析變數、巢狀使用

唯一索引方法:

docker rmi -f+映象 : 強制刪除某映象,容器會損壞(慎用)

刪除所有容器:docker rm -f $(docker ps -a -q)每個容器被建立後,都會分配乙個 container id 作為容器的唯一標示,後續對容器的啟動、停止、修改、刪除等所有操作,都是通過 container id 來完成,偏向於資料庫概念中的主鍵

docker ps --no-trunc 檢視

docker stop/start containerid 停止

docker start/stop mywordpress 通過容器別名啟動/停止

docker inspect mywordpress 檢視容器所有基本資訊

docker logs mywordpress 檢視容器日誌

docker stats mywordpress 檢視容器所占用的系統資源

docker exec 容器名 容器內執行的命令 容器執行命令

docker exec -it 容器名 /bin/bash 登入容器的bash

run 基礎命令

--restart=always   			容器的自動啟動

-h x.xx.xx 設定容器主機名

--dns xx.xx.xx.xx 設定容器使用的 dns 伺服器

--dns-search dns 搜尋設定 (搜尋域)

--add-host hostname:ip 注入 hostname <> ip 解析

--rm 服務停止時自動刪除

docker 三劍客

docker-swarm (少用)

docker-machine (少用)

docker-compose (主流)

多容器管理

docker 提倡理念是 「乙個容器乙個程序」,假設乙個服務需要由多個程序組成,就需要多個容器組成乙個系統,相互分工和配合對外提供完整服務

docker-compose 則是用來建立容器的。

多容器編排工具

docker 有三個主要的功能:build、ship 和 run,使用 docker-compose 可以幫我們在 run 的層面解決很多實際問題。docker-compose 通過乙個 yaml 模板檔案來統一管理多個容器的配置,如網路、資料卷、執行指令、環境變數、資源限制等等。有了 docker-compose 我們便可以一鍵重啟、關閉、刪除、監控所有的 docker 服務,只需要一次配置,則可以對容器進行統一管理,那麼此時我們則不必為了每次要執行一堆容器時寫大量的命令而頭疼

docker-compose install

容器編排工具,允許使用者在乙個模板( yaml 格式 )中定義一組相關聯的容器,會根據 --link 等引數,對啟動的優先順序進行排序

curl -luname -s-uname -m> /usr/local/bin/docker-compose

docker-compose 用法

-f 指定使用的 yaml 檔案位置

up -d 啟動容器專案

ps 顯示所有容器資訊

pause 暫停容器 (將記憶體儲存為檔案)

restart 重新啟動容器

unpause 恢復暫停

logs 檢視日誌資訊

rm 刪除容器

config -q 驗證 yaml 配置檔案是否正確

stop 停止容器

start 啟動容器

docker 容器管理

在雲端搭建微服務架構的系統,容器管理非常的重要,雖然docker 提供了大量的工具來實現容器管理,他們包括 portainer 乙個web 容器管理工具 docker command line 命令工具 daemon restfull 工具 但是,對於非運維人員而言,這些工具還是太麻煩了。我們計畫為...

docker 容器管理

docker container run it 容器id it 互動式執行 ps 適用於測試環境,又稱為工具式容器,用於開發 測試 臨時性的任務 docker container ls 檢視正在執行的容器 docker container ls a 檢視所有的容器 docker container ...

Docker容器基礎管理

docker run it name test vim 3fe2fe0dab2e bin bash docker run d p 8080 80 name discuz nginx 1.14互動式啟動 root docker docker run it name testcentos centos ...