Docker容器常用命令


Docker容器命令
1.docker運行(創建)容器命令
2. docker查看容器命令
3. docker退出容器命令
4. docker啟動容器命令
5. docker重啟容器命令
6. docker停止容器命令
7. docker刪除容器命令
8. docker進入容器命令
9. docker查看容器日志
10. docker查看容器內運行的線程
11. docker查看容器的內部細節
12. docker將容器中的信息拷貝到宿主機
13. docker提交自定義鏡像

1.docker運行(創建)容器命令

  •  docker run 鏡像名

1 | docker run tomcat
創建並運行容器命令,如果docker主機已經下載過tomcat,則該命令會直接創建一個tomcat的容器實例,否則會先去hub端拉取該tomcat鏡像,默認是 :latest最新版,然后在運行鏡像且生成一個tomcat容器實例對象。

  • docker run -it 鏡像名

1 | docker run -i -t centos
-i : 表示創建要給交互式容器

-t:表示運行容器的同時創建一個偽終端,一般與 -i 一起使用

該命令的意思就是 創建一個名叫centos 的鏡像對應的容器實例對象,並開啟一個終端與之交互,例如 centos c = new centos();

鏡像名centos是類,而運行時創建的容器 c 就是實例化的一個對象,注意這里的 c 是docker命令的,我們可以修改 c,自己設置

  • docker run -it --name 別名 鏡像名

1 | docker run -it --name mycentos centos
  –name : 自定義容器別名

2. docker查看容器命令

  • docker ps

1 | docker ps
查看當前正在運行的容器對象,注意這里只顯示 這個在運行中的容器信息,顯示內容字段如下:

CONTAINER ID : 容器唯一id

IMAGE : 對應鏡像名

COMMAND:啟動方式

CREATED:創建時間

STATUS:當前狀態

PORTS:占用端口

NAMES:容器名稱(別名)

  • docker ps -l(小寫的L)

1 | docker ps -l
-l(小寫的L) : 默認的查看只會查看正在運行中的容器信息,而ps -l 會顯示最近運行的一條容器信息

  • docker ps -a

1 | docker ps -a
-a : 顯示所有運行過的鏡像信息

  • docker ps -q

1 | docker ps -q
-q :表示只顯示對應的容器id 信息

3. docker退出容器命令

  • exit

離開容器,並關閉容器,這種好比 要出門了,且要關燈,只有等下次重新啟動該容器后,才會再次打開燈

  • Ctrl + p + q

暫時離開容器,還會回來,這種好比 臨時出門,下去買包煙就回來,此時狀態容器狀態還是 up 運行中

4. docker啟動容器命令

  • docker start 容器id

1 | docker start 容器id
這里需要注意不是每次都是重新根據鏡像生成一個容器對象(docker run),而是將以往創建並啟動過的容器再次運行起來,可以先通過 docker ps -a 命令 獲取運行過的容器信息,選擇要啟動的容器進行啟動即可,還要注意這個命令只會啟動容器,而不會再次打開且進入終端(可以使用docker attach 或 docker exec等命令進入)

5. docker重啟容器命令

  • docker restart 容器id

1 | docker restart 容器id
重新啟動容器服務

6. docker停止容器命令

  • docker stop 容器id

1 | docker stop 容器id
這種停止方式比較溫柔,會等待容器慢慢關閉,例如電腦關機,慢慢關機

  • docker kill 容器id

1 | docker kill 容器id
這種方式比較粗暴,但是速度快,直接結束線程,好比電腦直接長按關機

7. docker刪除容器命令

  • docker rm 容器id

1 | docker rm 容器id
刪除一個未運行的容器對象,支持多條刪除,但是刪除的容器id還未停止,則會刪除異常

  • docker rm -f 容器id

1 | docker rm -f 容器id
-f : 強制刪除,包括正在運行的容器也可以強制刪除,支持多條刪除

  • docker rm -f $(docker ps -aq)

1 | docker rm -f $(docker ps -aq)
組合命令,刪除全部的容器信息

8. docker進入容器命令

  • docker attach 容器id

1 | docker attach 容器id
attach:可以再次進入該容器的偽終端控制台

  • docker exec -it 容器id

1 | docker exec -it 容器id sh
exec:該命令,可以實現不需要進入容器終端進行交互,可以在宿主機與容器進行交互,

 -it : 表明執行一個交互式的偽終端方式進入到容器中

9. docker查看容器日志

  • docker logs 容器id

1 | docker logs 容器id
查看該容器的日志信息

  • docker logs -f 容器id

1 | docker logs -f 容器id
-f :跟隨打印最新的日志追加在最后面

  • docker logs -t 容器id

1 | docker logs -t 容器id
-t : 顯示日志打印的時間戳

  • docker logs --tail 數量 容器id

1 | docker logs --tail 3 容器id
–tail 數量:只顯示最新的指定數量的幾條日志信息

10. docker查看容器內運行的線程

  • docker top 容器id

1 | docker top 容器id
top:查看容器內運行的線程信息

11. docker查看容器的內部細節

  • docker inspect 容器id

1 | docker inspect 容器id
查看容器的內部細節信息,是一個json串

12. docker將容器中的信息拷貝到宿主機

  • docker cp 容器id:容器文件路徑 宿主機路徑

1 | docker cp a57faaef1751:/tmp/yum.log ./aa.log
cp:通過cp命令,將a57faaef1751容器中的 tmp目錄下的yum.log文件,復制到宿主機的當前目錄下,命名為aa.log

13. docker提交自定義鏡像

  • docker commit -a=作者名 -m=描述信息 原容器id 新容器名稱

1 | docker commit -a="lonely" -m="test commit" 原容器id lonely/mytomcat:1.0
commit:提交鏡像,將容器id對應的鏡像修改后,使用commit生產 自定義鏡像

lonely/mytomcat 表示鏡像名

1.0 : 表示鏡像版本

-a= : 表明作者

-m=:新鏡像的描述信息

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM