【这些都不知道你就是个弟弟】Docker常用命令

戳蓝字“CSDN云计算”关注我们哦!
640?wx_fmt=jpeg
作者 | 程序员欣宸
转自 | 企业博客
责编 | 阿秃

除了基本的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可以获取镜像的详情,如下图所示,红框中就是摘要信息:
640?wx_fmt=png       
4、按容器状态过滤:docker ps -f status=running,状态有这些:created, restarting, running, removing, paused, exited, dead

5、还有其他的过滤条件,不过不常用到,如下图:
640?wx_fmt=png
信息获取

1、查看容器所占硬盘空间:docker ps -s
640?wx_fmt=png      
上图红框中就是容器资源占用情况,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

下图展示了所有的列的名称:
640?wx_fmt=png      
3. 如下图红框所示,当字段内容过长时,展示的是部分内容,如果想查看完整信息请使用docker ps --no-trunc

640?wx_fmt=jpeg
4. 在使用docker history命令查看镜像的构建信息时,也会因为内容过长而被省略,如下图,此时也能用–no-trunc参数看到被省略的信息:

640?wx_fmt=jpeg
组合使用

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/

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

福利
扫描添加小编微信,备注“姓名+公司职位”,入驻【CSDN博客】,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!

640?wx_fmt=jpeg

推荐阅读:
  • 【目瞪口呆】通信机房内部长这样
  • 分布式事务方案这么多,到底应该如何选型?
  • Pandas中第二好用的函数 | 优雅的Apply

  • 程序员因接外包坐牢 456 天!两万字揭露心酸经历
  • 限时早鸟票 | 2019 中国大数据技术大会(BDTC)超豪华盛宴抢先看

  • 阿里开源物联网操作系统 AliOS Things 3.0 发布,集成平头哥 AI 芯片架构!

  • 雷声大雨点小:Bakkt「见光死」了吗?

真香,朕在看了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/521407.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php 模数 指数 公钥生成_php实现JWT认证

什么是JWTJWT(json web token)是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源。比如用在用户登录上。JWT定义了一种用于简洁,自包…

SpringBoot2.x 整合RabbitMQ_消费端

这一篇讲解消费者 文章目录一、依赖配置1. 引入依赖2. 配置文件3. 主配置二、代码Conding2.1. 消费者代码一、依赖配置 1. 引入依赖 <!--springboot整合RabbitMQ依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>sp…

不断迭代,严苛细节,最终性能如何满足? 基于ELK的大数据平台实践分享

摘要&#xff1a; 在2018年Elastic Meetup 南京交流会中&#xff0c;来自云利来科技的涂海波为现场的听众带来了题为《南京云利来基于ELK的大数据平台》的精彩分享。在本次分享中&#xff0c;他首先进行了公司简介&#xff0c;然后介绍了数据分类&#xff0c;包括数据采集及数据…

cmd输入pip报错_pyhon3下pip安装使用教程(win10)

一、前言 pip 是 Python 包管理工具&#xff0c;该工具提供了对Python 包的查找、下载、安装、卸载的功能。官网下载比较慢,只有几k速度&#xff0c;大家如果还没下载python和pip可以到我的网盘下载。目前pip为v20.0.2版&#xff0c;pytho为v3.8.2&#xff0c;有最新版本会随时…

【小白集合】详解服务器内存和显存基础知识

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | Hardy责编 | 阿秃早期内存通过存储器总线和北桥相连&#xff0c;北桥通过前端总线与CPU通信。从Intel Nehalem起&#xff0c;北桥被集成到CPU内部&#xff0c;内存直接通过存储器总线和CPU相连。所以&#xff0c;在AMD采用So…

如何在机器学习项目中使用统计方法的示例

摘要&#xff1a; 在本文中&#xff0c;将通过十个实例介绍在机器学习项目中起关键作用的统计学方法。 统计学和机器学习是两个密切相关的领域。两者的界限有时非常模糊&#xff0c;例如有一些明显属于统计学领域的方法可以很好地处理机器学习项目中的问题。事实上&#xff0c…

云服务器 文件服务,云服务器文件服务

云服务器文件服务 内容精选换一换远程桌面协议(Remote Desktop Protocol&#xff0c;RDP)&#xff0c;是微软提供的多通道的远程登录协议。本节为您介绍如何使用RDP文件远程登录Windows云服务器。从管理控制台下载的RDP文件对应唯一的云服务器&#xff0c;当前RDP文件命名规则为…

(需求实战_03) SpringBoot整合RabbitMQ 关键代码、策略、模式讲解

这篇主讲管控台和测试 文章目录一、管控台配置1. 创建交换机2. 创建队列3. 交换机绑定队列4. 交换机查看绑定关系5. 队列查看绑定关系二、项目准备2.1. 启动测试方法2.2. 清空控制台2.3.一、管控台配置 1. 创建交换机 2. 创建队列 3. 交换机绑定队列 4. 交换机查看绑定关系…

c++ vector 初始化_什么?还不懂c++vector的用法,你凭什么勇气来的!

作者&#xff1a;良知犹存转载授权以及围观&#xff1a;欢迎添加微信公众号&#xff1a;羽林君前言今天继续肝C&#xff0c;一入C深似海。越学越有意思。今天给大家带来一篇cvector的介绍&#xff0c;难以置信这篇文章写了我三天&#xff0c;不过总算整理完毕&#xff0c;现在分…

突发!Python再次卫冕,Java和C下降,你怎么看?

2019年转眼已经大半&#xff0c;在近几个月的榜单中&#xff0c;Python已经走上卫冕的道路&#xff0c;并且与Java的差距拉得更远了一些。以往与Java常呈现你追我赶之势&#xff0c;而这一次则是直接相差了近10%&#xff01;Python的火&#xff0c;有目共睹。Python陆续登上了I…

NLP产品级系统设计模式

摘要&#xff1a; 在本文中&#xff0c;作者从六个方面描述了一些生产NLP系统的常见设计和部署模式。这些是团队为了使产品开发与技术、业务、战略和操作目标保持一致而必须做出的选择或权衡。 摘要&#xff1a;在本文中&#xff0c;作者从六个方面描述了一些生产NLP系统的常见…

2个vector如何合成一个_面试中如何做到不卑不亢,牢记2个要点

文│叨叨HR那点事(文章原创&#xff0c;版权归本作者所有&#xff0c;欢迎个人转发分享)面试的时候什么态度和面试官沟通&#xff1f;这个问题&#xff0c;就像一千个人眼里有一千个哈姆雷特一样&#xff0c;人人都有自己的意见和看法。有人说&#xff0c;面试嘛&#xff0c;当…

机器学习到底是什么?

摘要&#xff1a; 机器学习到底是什么东东&#xff1f;了解一下&#xff01; 关于机器学习最简单的定义来自于Berkeley所表述的:机器学习是AI的一个分支&#xff0c;它探索了让计算机根据经验提高效率的方法。 为了更深刻的理解这一定义&#xff0c;接下来我们将对其进行拆分…

修改服务器时间报错,修改服务器时间linux

修改服务器时间linux 内容精选换一换IPv6的使用&#xff0c;可以有效弥补IPv4网络地址资源有限的问题。如果当前云服务器使用IPv4&#xff0c;那么启用IPv6后&#xff0c;云服务器可在双栈模式下运行&#xff0c;即云服务器可以拥有两个不同版本的IP地址&#xff1a;IPv4地址和…

windows 反弹shell_容器内反弹shell的51种姿势

什么是反弹shell&#xff1f;反弹shell(reverse shell)&#xff0c;就是控制端监听在某TCP/UDP端口&#xff0c;被控端发起请求到该端口&#xff0c;并将其命令行的输入输出转到控制端。reverse shell与telnet&#xff0c;ssh等标准shell对应&#xff0c;本质上是网络概念的客户…

使用Vue.js开发微信小程序:开源框架mpvue解析

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | 成全责编 | 阿秃转自 | 美团技术团队企业博客前言mpvue是一款使用Vue.js开发微信小程序的前端框架。使用此框架&#xff0c;开发者将得到完整的 Vue.js 开发体验&#xff0c;同时为H5和小程序提供了代码复用的能力。如果想将…

高并发下Java多线程编程基础

摘要&#xff1a; Java线程同步与异步 线程池 无锁化的实现方案 分布锁的实现方案 分享的目的&#xff1a; 进一步掌握多线程编程和应用的技巧&#xff0c;希望对大家在平时的开发中应对高并发编程有所帮助 Java线程同步与异步 1. 同步相关的方法有 wait, notify, notifyAll 2.…

deebot扫地机器人怎么清洁_扫地机器人清洁力拼杀,科沃斯机器人DEEBOT N3与小米1S对比评测...

“偷懒是第一生产力”&#xff0c;这句看似玩笑的话细细品味起来似乎还是有点道理&#xff0c;扫地机器人产业的逐渐兴盛又一次验证科技改变人们的生活方式。我自己生活中很少有时间去清扫地面&#xff0c;而且我是个很容易制造垃圾的人&#xff0c;几天不扫家里就脏乱的无法直…

机票分享第一篇 机票由何而来

要&#xff1a; 遥想05年刚加入飞猪&#xff0c;有同学问我机票搜索是怎么做的&#xff0c;一时间不知如何回答。转眼三年过去&#xff0c;为了给自己一个交代&#xff0c;抽时间把所负责的业务、系统、心得加以总结&#xff0c;才有了这几篇机票分享的文章。由于所用的技术、架…