這篇部落格就不扯皮了,簡單粗暴地貼上自己整理的一份Docker常用命令。
docker search ** // 查詢映象 docker pull nginx // 載入映象 # -a 拉取所有tagged映象 # --disable-content-trust 忽略映象的校驗,預設開啟 docker create // 建立一個容器但不啟動它 run docker run -d -P -it --name mynginx nginx # -t 在新容器內指定一個偽終端 # -i 允許對容器內的標準輸入進行互動 # -d 讓容器在後臺執行 # -P 將容器內部使用的網路埠隨機對映到主機高階口 # -p 指定繫結埠 -p [127.0.0.1:]5001:5000[ /tcp|udp](容器中的5000繫結到主機上的5001) # --name 建立容器時命名 # -v $PWD/www:/www:將主機中當前目錄下的www掛載到容器的/www docker run -i -t ubuntu:15.10 /bin/bash // 進入容器偽終端,退出後容器將停止執行 docker attach ## // 連線到正在執行的容器 docker exec -it 775c7c9ee1e1 /bin/bash // 進入容器中 docker network ls // 檢視網路 docker port ** // 檢視埠對映 docker logs -f ** //檢視容器內的標準輸出 # -f 讓docker logs像使用tail -f一樣來輸出容器內部的標準輸出 # --since 顯示某個開始時間的所有日誌(docker logs --since="2018-11-02" --tail=10 mynginx) # -t 顯示時間戳 # --tail 僅列出最新N條容器日誌 docker top ** // 檢視容器的程式 docker inspect ** // 檢視docker底層資訊(返回一個JSON檔案記錄著Docker容器的配置和狀態資訊) # -f 指定返回值的模板檔案(docker inspect --format=`{{.NetworkSettings.IPAddress}}` myphp7.1 // 檢視容器ip) # -s 顯示總的檔案大小 # --type 為指定型別返回JSON docker stop ** // 停止容器 docker start ** docker restart ** docker rm ** // 刪除容器 docker rmi ** // 刪除映象(前提必須先刪除相關容器) # -f 強制刪除 # --no-prune 不溢位該映象的過程映象,預設移出 docker ps -l // 檢視最後一次建立的容器 docker images // 列出本地主機上的映象 # -a 列出本地所有的映象 # --digests 顯示映象的摘要資訊 # -f 顯示滿足條件的映象 # -format 指定返回值的模板檔案 # -no-trunc 顯示完整的映象資訊 # -q 只顯示進行id docker ps //執行的容器 # -a 檢視全部容器 # -f 根據條件過濾顯示的內容(-f name=myphp) # --format 指定返回值的模板檔案(docker ps --format "{{.ID}}: {{.Ports}} {{.Image}}--- {{.Status}}----") # -l 顯示最近建立的容器 # -n 列出最近建立的n個容器 # -no-trunc 不截斷輸出 # -q 靜默木事,只顯示容器編號 # -s 顯示總的檔案大小 // 建立新映象 //1、從已經建立容器中更新映象,並提交這個映象 //2、使用Dockerfile指令來建立一個新的映象 docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2 # -m 提交的描述資訊 # -a 指定映象作者 # e218edb10161 容器id # runoob/ubuntu:v2 指定建立的目標映象名稱 // 使用dockerfile從零開始建立一個新映象 docker build -t runoob/centos:6.7 . # -t 指定建立的目標映象名字 # . Dockerfile檔案位置 設定映象標籤 docker build -t runoob/centos:6.7 . docker tag // 標記本地映象,將其歸入某創庫 docker kill -s KILL mynginx // 殺掉一個進行中的容器 docker pause/unpause // 暫停/恢復容器中所有程式 docker events // 從伺服器獲取實時時間 # -f 根據條件過濾時間(-f "image"="mysql:5.6") # --since 從指定的時間戳後顯示所有事件(docker events --since="1467302400") # --until 流水時間顯示到指定的時間為止 docker wait // 阻塞執行直到容器停止,然後列印出它的退出程式碼 docker export // 將檔案系統作為一個tar歸檔檔案匯出到STDOUT # -o 將輸出內容寫到檔案(docker export -o mysql-`date +%Y%m%d`.tar a404c6c174a2) docker cp // 用於容器與主機之間的資料拷貝 # -L 保持源目錄中的連結 # eg1: docker cp /www/test 96f7f14e99ab:/www/ 主機拷入容器(不需要/則改名) # eg2: docker cp 96f7f14e99ab:/www /www/test 容器拷到主機 docker diff // 檢查容器裡檔案結構的更改 docker loginout // 登出 docker login // 登入到一個docker映象創庫,若未指定映象創庫地址則預設為官方創庫 # -u 使用者名稱 # -p 密碼 docker push // 將本地映象上傳到映象創庫,要先登入映象創庫 docker history // 檢視指定映象的建立歷史 # -H 以可讀的格式列印映象大小和日期,預設為true # --no-trunc 顯示完整的提交記錄 # -q 僅列出提交記錄ID docker save // 將指定映象儲存成tar歸檔檔案 # -o 輸出到檔案 docker import // 從歸檔檔案中建立映象 # -c 應用docker指令建立映象 # -m 提交時的說明文字 docker info // 顯示Docker系統資訊,包括映象和容器數 docker version // 顯示Docker版本資訊 # -f 指定返回值的模板檔案