這篇博客就不扯皮了,簡單粗暴地貼上自己整理的一份Docker常用命令。 ...
這篇博客就不扯皮了,簡單粗暴地貼上自己整理的一份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 指定返回值的模板文件