您好,登錄后才能下訂單哦!
本篇內容主要講解“Docker常用命令分享”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Docker常用命令分享”吧!
除了基本的<font color="blue">docker pull</font>、<font color="blue">docker image</font>、<font color="blue">docker ps</font>,還有一些命令及參數也很重要,在此記錄下來避免遺忘。
以下是本次操作的環境:
操作系統:CentOS Linux release 7.7.1908
Docker:19.03.2
假設當前環境正運行著兩個容器,接下來的操作都基于這兩個容器進行:
[root@vostro harbor]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 11548ac31116 tomcat:9.0.26-jdk8-openjdk "catalina.sh run" 6 seconds ago Up 5 seconds 8080/tcp inspiring_ardinghelli 21c0499ccc76 nginx "nginx -g 'daemon of…" 29 minutes ago Up 29 minutes 80/tcp strange_zhukovsky
<font color="blue">docker info</font>用來看整體信息:
[root@vostro harbor]# docker info Client: Debug Mode: false Server: Containers: 0 Running: 0 Paused: 0 Stopped: 0 Images: 19 Server Version: 19.03.2 Storage Driver: overlay Backing Filesystem: xfs Supports d_type: true ...
<font color="blue">docker system prune</font>會刪除以下內容: a. 已經停止的容器; b. 未被使用的網絡; c. 所有未打標簽的鏡像; d. 構建鏡像時產生的緩存; 注意:<font color="red">此命令刪除的東西過多,所以要慎用</font>
刪除已經停止的容器:<font color="blue">docker container prune</font>
刪除未被使用的網絡:<font color="blue">docker network prune</font>
刪除沒有Tag的鏡像:<font color="blue">docker image prune</font>
刪除沒有容器的鏡像:<font color="blue">docker image prune -a</font>
刪除未被使用的數據卷:<font color="blue">docker volume prune</font>
執行<font color="blue">docker ps</font>的時候會列出所有運行狀態的容器,有時我們只想看自己關注的,這時可以對結果做過濾:
按容器ID過濾:<font color="blue">docker ps -f id=11548ac31116</font>
[root@vostro harbor]# docker ps -f id=11548ac31116 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 11548ac31116 tomcat:9.0.26-jdk8-openjdk "catalina.sh run" 4 minutes ago Up 4 minutes 8080/tcp inspiring_ardinghelli
按容器名稱過濾:<font color="blue">docker ps -f name=inspiring_ardinghelli</font>
[root@vostro harbor]# docker ps -f name=inspiring_ardinghelli CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 11548ac31116 tomcat:9.0.26-jdk8-openjdk "catalina.sh run" 7 minutes ago Up 7 minutes 8080/tcp inspiring_ardinghelli
按鏡像過濾,這種過濾再細分有三種: a. 按鏡像名和TAG過濾:<font color="blue">docker ps -f ancestor=tomcat:9.0.26-jdk8-openjdk</font> b. 按鏡像ID過濾:<font color="blue">docker ps -f ancestor=4965bfab1881</font> c. 按照鏡像摘要信息過濾:<font color="blue">docker ps -f ancestor=tomcat@sha256:67a9904e3ceb03abc50db7b374db7362f7e44d08a41488dd24c2bb14df8989a3</font> <br>鏡像的摘要信息如何獲取呢?執行命令<font color="blue">docker inspect tomcat:9.0.26-jdk8-openjdk</font>可以獲取鏡像的詳情,如下圖所示,紅框中就是摘要信息:
按容器狀態過濾:<font color="blue">docker ps -f status=running</font>,狀態有這些:created, restarting, running, removing, paused, exited, dead
還有其他的過濾條件,不過不常用到,如下圖:
查看容器所占硬盤空間:<font color="blue">docker ps -s</font> 上圖紅框中就是容器資源占用情況,<font color="blue">508MB</font>表示:鏡像大小+容器自身大小,40KB表示容器自身所占資源大小;
查看容器信息時只看某些字段,例如只看容器ID、鏡像、容器名稱這三列:<font color="blue">docker ps --format "table {{.ID}}: {{.Image}}: {{.Names}}"</font>
[root@vostro harbor]# docker ps --format "table {{.ID}}: {{.Image}}: {{.Names}}" CONTAINER ID: IMAGE: NAMES 11548ac31116: tomcat:9.0.26-jdk8-openjdk: inspiring_ardinghelli 21c0499ccc76: nginx: strange_zhukovsky
下圖展示了所有的列的名稱: 3. 如下圖紅框所示,當字段內容過長時,展示的是部分內容,如果想查看完整信息請使用<font color="blue">docker ps --no-trunc</font> 4. 在使用<font color="blue">docker history</font>命令查看鏡像的構建信息時,也會因為內容過長而被省略,如下圖,此時也能用<font color="blue">--no-trunc</font>參數看到被省略的信息:
只顯示Tomcat容器的ID字段:<font color="blue">docker ps -f ancestor=tomcat:9.0.26-jdk8-openjdk -q</font>
[root@vostro harbor]# docker ps -f ancestor=tomcat:9.0.26-jdk8-openjdk -q 11548ac31116
上面的命令可以得到Tomcat容器的ID字段,如果我們想停止該容器,將上述命令和<font color="blue">docker stop</font>組合起來使用即可:<font color="blue">docker stop $(docker ps -f ancestor=tomcat:9.0.26-jdk8-openjdk -q)</font>
[root@vostro harbor]# docker stop $(docker ps -f ancestor=tomcat:9.0.26-jdk8-openjdk -q) 11548ac31116 [root@vostro harbor]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 11548ac31116 tomcat:9.0.26-jdk8-openjdk "catalina.sh run" About an hour ago Exited (143) 43 seconds ago inspiring_ardinghelli 21c0499ccc76 nginx "nginx -g 'daemon of…" 2 hours ago Up 2 hours 80/tcp strange_zhukovsky
可見tomcat容器已經停止。
到此,相信大家對“Docker常用命令分享”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。