Docker從入門到精通(四)——常用命令
- 2021 年 12 月 15 日
- 筆記
- docker, Docker從入門到精通
話不多說,本篇文章給大家介紹 docker 的常用命令,基本上會覆蓋我們日常使用的命令。
1、萬能幫助命令
docker 命令 –help
假設你想用某個命令,但是又不知道該命令的一些參數怎麼用,這時候上面的萬能幫助命令就派上用場了。
更有甚者,你連命令也不記得了,那直接輸入:
docker –help
找到你想要的那個命令,然後通過上面命令查看用法。
比如不知道如何運行容器?
找到英文 Run a command in a new container,這正是我們需要的。
但是我又不知道 run 命令怎麼用,接著如下:
要是命令行看的太累,沒關係,貼心的我給你們找好了官方參考:
什麼?英文看不懂?百度翻譯走起來吧,這個確實沒啥辦法了,但實際上你們看完我這邊文章,基本上常用的命令都會詳細介紹的。
2、常用命令
2.1 查看版本資訊
docker version
在安裝 docker 時我們介紹過這個命令,這裡就不截圖了。
2.2 查看系統資訊
docker info
包括查看當前系統 docker 鏡像和容器的數量。
3、鏡像常用命令
3.1 查看鏡像
docker images
①、REPOSITORY: 鏡像倉庫源
②、TAG:鏡像版本,latest 表示最新版本
③、IMAGE ID:鏡像ID(特別重要)
④、CREATED:創建時間
⑤、SIZE:鏡像大小。
3.2 鏡像搜索
docker search <鏡像名>
①、NAME:鏡像名稱
②、DESCRIPTION:鏡像描述
③、STARS:收藏數
④、OFFICIAL:是否官方
⑤、AUTOMATED:是否自動構建
這裡的搜索,也有官方網址:
3.3 下載鏡像
docker pull 鏡像名<:tags>
比如下載最新版 Tomcat 鏡像: docker pull tomcat
比如下載Tomcat 8.0 鏡像:docker pull tomcat:8.0
3.4 刪除鏡像
docker rmi repository<:tag> # 根據名稱和版本刪除,如果不指定tag,默認是lastest
docker rmi IMAGE_ID # 根據鏡像id刪除
docker rmi IMAGE_ID1 IMAGE_ID2 … # 批量刪除
上面的 repository 和 tag 便是前面說的 【docker images】命令的提示。
比如刪掉 tomcat 8.0 版本的鏡像:
4、容器常用命令
4.1 新建容器並啟動
docker run <參數> 鏡像id|鏡像名稱
參數說明:
①、–name: 為啟動容器指定一個名字,注意有兩個 –。
②、-d:表示以後台方式運行,並返回容器ID。
③、-i:以交互模式運行容器。
④、-t:為容器重新分配一個偽輸入終端。
⑤、-p: 主機埠:容器埠 | 容器埠 | ip:主機埠:容器埠。
⑥、-P:隨機埠映射,容器內部埠隨機映射到主機埠。
⑦、–link=[]:添加鏈接到另一個容器。
比如以後台方式啟動一個Tomcat容器:
4.2 進入容器
①、使用run方式在創建時進入
docker run -it [鏡像id|鏡像名] /bin/bash
②、使用 attach 命令(進入已啟動的容器)
直接進入 容器啟動命令的終端,不會啟動新進程,多個attach連接共享容器螢幕,參數:–sig-proxy=false 確保CTRL-D或CTRL-C不會關閉容器
docker attach –sig-proxy=false 容器名稱|容器ID
③、使用 exec 命令(進入已啟動的容器)
進入容器後開啟一個新的終端,可以在裡面進行操作。
docker exec -it 容器名稱|容器ID /bin/bash
4.3 退出容器
①、Ctrl+P+Q : 僅退出容器,不關閉容器。
②、exit: 關閉容器並退出。
4.4 查看所有運行的容器
1、查看正在運行的容器
docker ps
2、查看正在運行的容器的ID
docker ps -q
3、查看正在運行+歷史運行過的容器
docker ps -a
4、顯示運行容器總文件大小
docker ps -s
4.5 停止與刪除容器
①、停止一個運行中的容器
docker stop 容器名|容器id
②、殺掉一個運行中的容器
docker kill 容器名|容器id
③、刪除一個已停止的容器
docker rm 容器名|容器id
④、刪除一個運行中的容器
docker rm -f 容器名|容器id
4.6 查看容器日誌
docker logs <參數>容器名|容器id
參數:
①、-f 跟蹤日誌輸出
②、-t:顯示時間戳
③、–tail N:僅列出最後N條日誌
4.7 查看容器進程
docker top 容器ID|容器名
4.8 查看容器資訊
docker inspect 容器ID|容器名
4.9 主機和容器之間數據複製
①、將容器中的文件copy至本地路徑
docker cp 容器名|容器ID:/[container_path] [local_path]
②、將主機文件copy至容器
docker cp [local_path] 容器名|容器ID:/[container_path]
③、將主機文件copy至容器,目錄重命名為[container_path](注意與非重命名copy的區別)
docker cp [local_path] rabbitmq:/[container_path]
5、總結
一圖勝千言: