Docker之常用命令(二)

那一葉隨風發表於2018-11-07

這篇部落格就不扯皮了,簡單粗暴地貼上自己整理的一份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 指定返回值的模板檔案

 

相關文章