Docker系列(四)Docker命令(超詳細)
一、Docker幫助命令
1.查看Docker版本
docker version
2.查看Docker系統信息
docker indo
3.查看docker幫助文檔
docker --help
二、Docker鏡像命令
1.列出主機上的鏡像
docker images [OPTIONS]
參數說明:
-a 列出本地所有的鏡像(包括中間鏡像層)
-q 只顯示鏡像ID
--digests 顯示鏡像摘要信息
--no-trunc 顯示完整的鏡像信息
2.從倉庫中列出查詢的鏡像信息
docker search [OPTIONS] 鏡像名字
參數說明
--no-trunc 顯示完整的鏡像描述
-s 列出收藏數不小於指定值的鏡像
--automated 只列出automated build類型的鏡像
3.下載鏡像
docker pull 鏡像名字 [:TAG](版本號,默認爲最新版)
4.刪除鏡像
docker rmi 某個鏡像ID
參數說明
-f 鏡像ID 刪除動那個鏡像
-f 鏡像名1:TAG 鏡像名2:TAG 刪除多個鏡像
-f $(docker images -qa) 刪除全部鏡像
5.從容器創建一個新鏡像
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
參數說明
-a 提交的鏡像作者
-c 使用Dockerfile指令來創建鏡像;
-m 提交時的說明文字;
-p 在commit時,將容器暫停。
列子:docker commit -a "xiaoming" -m "my centos" 77916c27f696 mycentos:1.0
6.將自己的鏡像推送到倉庫中
docker push [OPTIONS] NAME[:TAG]
參數說明
--disable-content-trust 忽略鏡像的校驗,默認開啓
推送鏡像需要先有自己的賬號,使用docker login來登錄
並且修改鏡像的名字:
docker tag 鏡像ID 用戶ID/鏡像名字
二、Docker容器命令
有鏡像才能創建容器,這是根本前提
1.新建並啓動容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG]
OPTIONS參數說明:
/bin/bash 可以省略,默認值
--name="容器新名字" 爲容器指定一個名稱
-d 後臺運行容器,並返回容器ID,啓動守護容器
注意:由於docker的機制問題,docker容器後臺運行就必須有一個前臺進程,如果不是一些一直掛起的任務會自動退出。
-i 以交互模式運行容器,通常與-t共同使用
-t 爲容器提供一個僞輸入終端
-P 隨機端口映射
-p 指定端口映射,有四種格式
ip:hostPort:containerPort
ip::containerPort
hostPort:containerPort
containerPort
COMMAND : 添加一個執行的命令,會在容器啓動後執行
2.列出當前正在運行的容器
docker ps [OPTIONS]
OPTIONS參數說明
-a 列出當前正在運行的容器,加歷史上運行過的
-l 顯示最近創建的容器
-n 顯示最近n個創建愛你的容器
-q 靜默模式,只顯示容器的編號
--no-trunc 不截斷輸出
3.退出容器
exit 容器停止並退出
ctrl+p+q 容器不停止退出
4.啓動容器
docker start 容器ID和容器名
5.重啓容器
docker restart 容器ID和容器名
6.停止容器
正常停止:
docker stop 容器ID和容器名
強制停止:
docker kill 容器ID和容器名
7.刪除已經停止的容器
docker rm 容器ID
批量刪除:
docker rm -f ${docker ps -a -q} 或
docker ps -a -q | xargs docker rm
8.查看容器日誌
docker logs -f -t --tail 容器ID
-t 加入時間戳
-f 跟隨最新的日誌打印
--tail 數字 顯示最後多少條
9.查看容器內運行的進程
docker top 容器ID
10.查看容器內部細節
docker inspect 容器ID
11.進入正在運行的容器
docker exec -it 容器ID bashshell
重新進入:
docker attach 容器ID
exec 和 attach 的區別:
attach是直接進入容器的終端,exec 可以直接在宿主機對容器進行操作,並且不會打開新的終端
12將容器內容拷貝到主機
docker cp 容器ID:容器內路徑 主機路徑