网站首页 > 博客文章 正文
作者 | 程序员欣宸
转自 | 企业博客
责编 | 阿秃
除了基本的docker pull、docker image、docker ps,还有一些命令及参数也很重要,在此记录下来避免遗忘。
环境信息
以下是本次操作的环境:
操作系统: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
整体信息
docker info用来看整体信息:
[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
释放空间
docker system prune会删除以下内容:
已经停止的容器;
未被使用的网络;
所有未打标签的镜像;
构建镜像时产生的缓存;
注意:此命令删除的东西过多,所以要慎用
删除已经停止的容器:docker container prune
删除未被使用的网络:docker network prune
删除没有Tag的镜像:docker image prune
删除没有容器的镜像:docker image prune -a
删除未被使用的数据卷:docker volume prune
过滤
执行docker ps的时候会列出所有运行状态的容器,有时我们只想看自己关注的,这时可以对结果做过滤:
1、按容器ID过滤:docker ps -f id=11548ac31116
[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
2、按容器名称过滤:docker ps -f name=inspiring_ardinghelli
[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
3、按镜像过滤,这种过滤再细分有三种:
按镜像名和TAG过滤:docker ps -f ancestor=tomcat:9.0.26-jdk8-openjdk
按镜像ID过滤:docker ps -f ancestor=4965bfab1881
按照镜像摘要信息过滤:docker ps -f ancestor=tomcat@sha256:67a9904e3ceb03abc50db7b374db7362f7e44d08a41488dd24c2bb14df8989a3
镜像的摘要信息如何获取呢?执行命令docker inspect tomcat:9.0.26-jdk8-openjdk可以获取镜像的详情,如下图所示,红框中就是摘要信息:
4、按容器状态过滤:docker ps -f status=running,状态有这些:created, restarting, running, removing, paused, exited, dead
5、还有其他的过滤条件,不过不常用到,如下图:
信息获取
1、查看容器所占硬盘空间:docker ps -s
上图红框中就是容器资源占用情况,508MB表示:镜像大小+容器自身大小,40KB表示容器自身所占资源大小。
2、查看容器信息时只看某些字段,例如只看容器ID、镜像、容器名称这三列:docker ps --format “table {{.ID}}: {{.Image}}: {{.Names}}”
[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. 如下图红框所示,当字段内容过长时,展示的是部分内容,如果想查看完整信息请使用docker ps --no-trunc
4. 在使用docker history命令查看镜像的构建信息时,也会因为内容过长而被省略,如下图,此时也能用–no-trunc参数看到被省略的信息:
组合使用
1、只显示Tomcat容器的ID字段:docker ps -f ancestor=tomcat:9.0.26-jdk8-openjdk -q
[root@vostro harbor]# docker ps -f ancestor=tomcat:9.0.26-jdk8-openjdk -q
11548ac31116
2、上面的命令可以得到Tomcat容器的ID字段,如果我们想停止该容器,将上述命令和docker stop组合起来使用即可:docker stop $(docker ps -f ancestor=tomcat:9.0.26-jdk8-openjdk -q)
[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命令,更多的信息请参考官方文档:https://docs.docker.com/engine/reference/commandline/docker/
猜你喜欢
- 2024-09-23 docker部署linux web运行环境笔记
- 2024-09-23 不可错过的Docker完整笔记(dockerhib)
- 2024-09-23 docker中执行指定脚本(docker 下运行springboot应用)
- 2024-09-23 Java项目要不要部署在Docker里?(java部署工具)
- 2024-09-23 Java Dockerfile 最佳实践分享(java docker部署)
- 2024-09-23 Spring Cloud 第十一篇:docker部署spring cloud项目
- 2024-09-23 用 Docker、Gradle 来构建、运行、发布一个 Spring Boot 应用
- 2024-09-23 功能问题:如何用Docker部署一个后端项目?
- 2024-09-23 Docker系列三部署Tomcat(docker部署tomcat项目)
- 2024-09-23 Springboot项目使用docker部署(springboot+docker自动部署)
你 发表评论:
欢迎- 最近发表
-
- 给3D Slicer添加Python第三方插件库
- Python自动化——pytest常用插件详解
- Pycharm下安装MicroPython Tools插件(ESP32开发板)
- IntelliJ IDEA 2025.1.3 发布(idea 2020)
- IDEA+Continue插件+DeepSeek:开发者效率飙升的「三体组合」!
- Cursor:提升Python开发效率的必备IDE及插件安装指南
- 日本旅行时想借厕所、买香烟怎么办?便利商店里能解决大问题!
- 11天!日本史上最长黄金周来了!旅游万金句总结!
- 北川景子&DAIGO缘定1.11 召开记者会宣布结婚
- PIKO‘PPAP’ 洗脑歌登上美国告示牌
- 标签列表
-
- ifneq (61)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)