Docker ps命令
Docker ps命令
大纲
Docker ps命令概述
docker ps 命令可以用来列出 Docker容器 相关信息。
Docker ps命令语法
haicoder(www.haicoder.net)# docker ps [OPTIONS]
Docker ps命令参数
选项 | 说明 |
---|---|
无参 | 默认显示正在运行的容器。 |
-a | 显示所有的容器,包括未运行的。 |
-f | 根据条件过滤显示的内容。 |
–format | 指定返回值的模板文件。 |
-l | 显示最近创建的容器。 |
-n | 列出最近创建的n个容器。 |
–no-trunc | 不截断输出。 |
-q | 静默模式,只显示容器编号。 |
-s | 显示总的文件大小。 |
案例
显示正在运行的容器
使用 docker ps 命令,显示当前正在运行的docker容器。
haicoder(www.haicoder.net)# docker ps
运行后,终端显示信息如下图所示:
使用 docker run 命令,启动 docker 容器。
haicoder(www.haicoder.net)# docker run -it -d ubuntu
#输出
2b7be687c268e9651b70ad2d84ac9487482dea0587c9e50471c8fcdeea848a77
再次使用 docker ps 命令,显示当前正在运行的 docker 容器, 终端显示信息如下图所示:
此时,正在运行的容器列表有刚才运行的容器信息。
显示最近创建的 N 个容器
使用 docker run 命令,启动五个 docker容器。
haicoder(www.haicoder.net)# docker run -it -d ubuntu
bfffa738d6d31404af615a18da1883c66e830ac8a4c11a0e93c05123649f1ee0
haicoder(www.haicoder.net)# docker run -it -d ubuntu
075c757f6a04278993a925cd2a1717557a68cd6631008c1445eaa510abf70ad0
haicoder(www.haicoder.net)# docker run -it -d ubuntu
7ab8cab8d002068f97d94a1e315b89844113fd5d47bea94001d1c7c18e3f06a1
haicoder(www.haicoder.net)# docker run -it -d ubuntu
234972c5a5630b1aa53f955ffaa28509cc20cfe5c6f387d1243a0d418a4fd28d
haicoder(www.haicoder.net)# docker run -it -d ubuntu
275dca19d3afd755ad72ccd5666060b828e90a2166954b8623d8887087d992fc
使用 docker ps 命令,显示当前正在运行的 docker 容器, 终端显示信息如下图所示:
使用 docker ps -n 3 命令,显示当前正在运行的 3 个 docker 容器, 终端显示信息如下图所示:
此时,我们看到只显示了最近运行的 3 个 docker 容器,而并非所有的容器。即,在以上案例中,我们使用 docker ps -n 命令,可以显示最近创建的 N 个 docker容器。
最后,我们使用 docker kill 和 docker rm 命令,删除所有的容器。
haicoder(www.haicoder.net)# docker kill `docker ps -qa` && docker rm `docker ps -qa`
275dca19d3af
234972c5a563
7ab8cab8d002
075c757f6a04
bfffa738d6d3
2b7be687c268
275dca19d3af
234972c5a563
7ab8cab8d002
075c757f6a04
bfffa738d6d3
2b7be687c268
显示所有容器
使用 docker run 命令,启动三个 docker容器。
haicoder(www.haicoder.net)# docker run -it -d ubuntu
1e4956dd7ef8dca2844a94af218a8f3272d2fbc72df9839e6bb0a5dcca598c65
haicoder(www.haicoder.net)# docker run -it -d ubuntu
bc427c7eb2ad3247dd77198516d2eeda93697861775c6faef48511b534499a5c
haicoder(www.haicoder.net)# docker run -it -d ubuntu
790dd6cfd43e8f552687b5fa4465d81fc49d1ca1af37354c7562618a63364ce0
使用 docker ps 命令,显示当前正在运行的 docker容器, 终端显示信息如下图所示:
使用 docker stop 命令,停止其中两个 docker容器。
haicoder(www.haicoder.net)# docker stop 790dd6cfd43e bc427c7eb2ad
790dd6cfd43e
bc427c7eb2ad
再次使用 docker ps 命令,显示当前正在运行的 docker容器, 终端显示信息如下图所示:
此时,只显示了正在运行的一个 docker 容器,刚被我们停止的两个 docker 容器,并未显示。
我们使用 docker ps -a 命令,显示所有的 docker 容器,包括运行还是未运行的。
此时,显示了我们创建的三个容器,包括一个运行的和两个未运行的。即,在以上案例中,我们使用 docker ps -a 命令,可以显示所有的 docker容器,包括运行的和未运行的。
最后,我们使用 docker kill 和 docker rm 命令,删除所有的容器。
haicoder(www.haicoder.net)# docker kill `docker ps -qa` ; docker rm `docker ps -qa`
显示所有容器 ID
使用 docker run 命令,启动三个 docker 容器。
haicoder(www.haicoder.net)# docker run -it -d ubuntu
c8c6f11276b77b57a081b50b28a20b84c28de0e3c0baf4d261c6b9eff07d60d7
haicoder(www.haicoder.net)# docker run -it -d ubuntu
463bbe5457134a51078297f5cb7ccbc1d10c7d1d870169cf0096712d68bed2e7
haicoder(www.haicoder.net)# docker run -it -d ubuntu
4af5cf8ed40dec5d23b7cbe85274553030a25939f327614e2cb826e644d58c45
使用 docker ps 命令,显示当前正在运行的 docker 容器, 终端显示信息如下图所示:
我们使用 docker ps -aq 命令,显示所有的 docker 容器的 ID 信息,包括运行还是未运行的,终端显示如下:
此时,并未显示容器的所有信息,只显示了容器的 ID 信息,此处的 ID 可以配合 docker kill 和 docker rm 等命令,对容器实现批量的管理。
即,在以上案例中,我们使用 docker ps -aq 命令,可以显示所有的 docker 容器的 ID,包括运行的和未运行的。
最后,我们使用 docker kill 和 docker rm 命令,删除所有的容器。
haicoder(www.haicoder.net)# docker kill `docker ps -qa` ; docker rm `docker ps -qa`
显示容器 ID 的完整形式
使用 docker run 命令,启动 docker容器。
haicoder(www.haicoder.net)# docker run -it -d ubuntu
dfeed15d07dbc8af110c407369b592b366a8501dca900e600467629ab1eeb798
使用 docker ps --no-trunc 命令,显示 docker容器 ID 的完整形式,终端显示信息如下图所示:
此时,返回结果中的 CONTAINER ID 列显示的是容器的完整 ID。即,在以上案例中,我们使用 docker ps --no-trunc 命令,显示 docker容器 ID 的完整形式,而不是缩略形式。
最后,我们使用 docker kill 和 docker rm 命令,删除所有的容器。
haicoder(www.haicoder.net)# docker kill `docker ps -qa` ; docker rm `docker ps -qa`
显示容器大小
使用 docker run 命令,启动 docker容器。
haicoder(www.haicoder.net)# docker run -it -d ubuntu
379e89ce154a5e1a4821eeac352d36506f971c64f8b416ba571a4a02a7e3b45a
使用 docker ps -s 命令,可以显示 docker 容器的大小信息,终端显示信息如下图所示:
此时,返回结果中多了一列 SIZE,SIZE 有两个值,一个是容器真实增加的大小,一个是整个容器的虚拟大小。容器虚拟大小 = 容器真实增加大小 + 容器镜像大小。
即,在以上案例中,我们使用 docker ps -s 命令,可以显示 docker容器大小信息。
最后,我们使用 docker kill 和 docker rm 命令,删除所有的容器。
haicoder(www.haicoder.net)# docker kill `docker ps -qa` ; docker rm `docker ps -qa`
docker ps命令高级用法
如果容器数量过多,或者想排除干扰容器,可以通过 docker ps --filter 或 docker ps -f ,过滤需要显示的容器。
docker ps过滤规则
选项后跟的都是键值对 key=value (可不带引号),如果有多个过滤条件,就多次使用 filter 选项。例如:
haicoder(www.haicoder.net)# docker ps --filter id=a1b2c3 --filter name=haicoder
相同条件之间的关系是或,不同条件之间的关系是与关系。例如:
haicoder(www.haicoder.net)# docker ps --filter name=haicoder --filter name=hicoder --filter status=running
以上过滤条件会找出 name 包含 haicoder 或 hicoder 并且 status 为 running 的容器。
id 和 name,支持正则表达式,使用起来非常灵活。例如:
haicoder(www.haicoder.net)# docker ps --filter name=^/haicoder$
docker ps格式化显示
如果想自定义显示容器字段,可以用格式化选项 --format ,具体参考 docker 格式化。
结果解析
字段名 | 说明 |
---|---|
CONTAINER ID | 容器 ID 的意思,可以通过这 id 找到唯一的对应容器。 |
IMAGE | 该容器所使用的镜像。 |
COMMAND | 启动容器时运行的命令。 |
CREATED | 容器的创建时间,显示格式为 ”**时间之前创建“。 |
STATUS | 容器现在的状态。 |
PORTS | 容器的端口信息和使用的连接类型(tcp\udp)。 |
NAMES | 镜像自动为容器创建的名字,也唯一代表一个容器。 |
容器状态
状态 | 说明 |
---|---|
created | 已创建。 |
restarting | 重启中。 |
running | 运行中。 |
removing | 迁移中。 |
paused | 暂停。 |
exited | 退出。 |
dead | 僵死。 |
Docker ps命令总结
docker ps 命令可以用来列出容器相关信息。
Docker ps命令语法:
docker ps [OPTIONS]
相关文章:

Kubernetes对象的定义和操作
Kubernetes对象指的是Kubernetes系统的持久化实体,所有这些对象合起来,代表了你集群的实际情况。常规的应用里,我们把应用程序的数据存储在数据库中,Kubernetes将其数据以Kubernetes对象的形式通过 api server存储在 etcd 中。集群中运行了哪些容器化应用程序集群中对应用程序可用的资源应用程序相关的策略定义,例如,重启策略、升级策略、容错策略其他Kubernetes管理应用程序时所需要的信息。

k8s 标签和选择器
标签(Label)是附加在Kubernetes对象上的一组名值对,其意图是按照对用户有意义的方式来标识Kubernetes对象,同时,又不对Kubernetes的核心逻辑产生影响。管理这些对象时,很多时候要针对某一个维度的条件做整体操作,例如,将某个版本的程序整体删除,这种情况下,如果用户能够事先规划好标签的使用,再通过标签进行选择,就会非常地便捷。Kubernetes api server支持两种形式的标签选择器,equality-based 基于等式的 和 set-based 基于集合的。

14个Java并发容器,你用过几个?
不考虑多线程并发的情况下,容器类一般使用ArrayList、HashMap等线程不安全的类,效率更高。在并发场景下,常会用到ConcurrentHashMap、ArrayBlockingQueue等线程安全的容器类,虽然牺牲了一些效率,但却得到了安全。上面提到的线程安全容器都在java.util.concurrent包下,这个包下并发容器不少,今天全部翻出来鼓捣一下。仅做简单介绍,后续再分别深入探索。ConcurrentHashMap:并发版HashMap。

k8s搭建部署(超详细)
Kubernetes是Google 2014年创建管理的,是Google 10多年大规模容器管理技术Borg的开源版本。它是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。快速部署应用快速扩展应用无缝对接新的应用功能节省资源,优化硬件资源的使用可移植: 支持公有云,私有云,混合云,多重云(multi-cloud)可扩展: 模块化, 插件化, 可挂载, 可组合自动化: 自动部署,自动重启,自动复制,自动伸缩/扩展。

Docker部署SpringBoot项目详细部署过程
Docker可比喻成一个装应用的容器,将应用及其依赖文件、数据等打包在容器内,直接运行容器即可把应用运行起来,而无需关心环境配置问题。 本文记录个人学习Docker的总结内容,安装、配置和部署等内容,在过程中,应注意命令不要写错,加上Docker插件等问题,若出现理解不到位的地方,请多指出。

[Ubuntu 22.04] Docker安装及使用
容器的生命周期由用户控制,用户可以选择手动删除容器或让其保留在系统中以供之后使用。选项允许你在容器内部创建一个交互式的终端会话,使你可以像在本地终端一样与容器进行交互。你可以在容器内执行命令,查看输出并输入命令。镜像拉取完成后,可以使用以下命令创建并启动一个基于 Ubuntu 20.04 镜像的容器。列出所有正在运行的容器,并显示它们的容器ID、镜像、命令、创建时间、状态等信息。以下命令可以中止容器,改命令将向容器发送一个停止信号,使其正常停止并退出。这将显示所有容器的列表,包括正在运行的和已停止的容器。

Docker网络详解
如何自定义一个网络?查看新创键的mynet详细信息:# 创建两个使用相同自定义网络的容器# 测试容器互连^C^C。

Docker exec命令详细使用指南
Docker exec命令是Docker提供的一个强大工具,用于在正在运行的容器中执行命令。本文将详细介绍Docker exec命令的用法和示例,帮助大家更好地理解和使用这个命令。Docker是一种流行的容器化平台,允许我们在容器中运行应用程序。有时候,在容器内执行命令可以帮助我们调试、排查问题或进行其他操作。这就是Docker exec命令发挥作用的时候。本文详细介绍了Docker exec命令的用法和示例。

k8s图形化管理工具之rancher
在前面的k8s基础学习中,我们学习了各种资源的搭配运用,以及命令行,声明式文件创建。这些都是为了k8s管理员体会k8s的框架,内容基础。在真正的生产环境中,大部分的公司还是会选用图形化管理工具来管理k8s集群,大大提高工作效率。在二进制搭建k8集群时,我们就知道了k8s本身就具有一款原生的k8s集群管理工具,但是原生图形化管理工具dashborad只拥有管理一个集群的能力。而对于现代化生产力公司来讲,一个集群能够做的事情还是太少,所以我们需要引入更强大的集群管理工具。

使用DockerFile构建镜像与镜像上传
首先Dockerfile 是一个文本格式的配置文件, 用户可以使用 Dockerfile 来快速创建自定义的镜像。

Spring Boot应用程序如何配置 HTTPS 访问方式
在 Spring Boot 应用程序中配置 HTTPS 访问方式可以根据你是否拥有由受信任的证书颁发机构(CA)签发的证书来分为两种情况:使用自签名证书和使用 CA 签发的证书。

使用docker部署RStudio容器并结合内网穿透实现公网访问
RStudio Server 使你能够在 Linux 服务器上运行你所熟悉和喜爱的 RStudio IDE,并通过 Web 浏览器进行访问,从而将 RStudio IDE 的强大功能和工作效率带到基于服务器的集中式环境中。下面介绍在Linux docker中安装RStudio Server并结合cpolar内网穿透工具,实现远程访问,docker方式安装可以避免很多问题,一键安装,如设备没有安装docker,需提前安装docker。

Docker网络配置&网络模式
网络相关概念,子网掩码、网关、规则的介绍及网络模式bridge、host详解,Dockers自定义网络配置

Docker的介绍及安装&基本操作命令
在讲到Docker之前,我们先了解虚拟机与容器之间的区别VM(VMware)在宿主机器、宿主机器操作系统的基础上创建虚拟层、虚拟化的操作系统、虚拟化的仓库,然后再安装应用;容器,在宿主机器、宿主机器操作系统上创建Docker引擎,在引擎的基础上再安装应用。特性容器虚拟机启动秒级分钟级硬盘使用一般为MB一般为GB性能接近原生弱于系统支持量单机支持上千个容器一般几十个。

Spring boot 3 集成rocketmq-spring-boot-starter解决版本不一致问题
根据上篇文章使用Docker安装RocketMQ并启动之后,有个隐患详情见下文。如何解决rocketmq 和spring boot 3.x集成问题

docker-宿主机与容器的命令执行方法
宿主机命令容器执行程序、容器命令宿主机执行程序的方法。

RocketMQ5-03RocketMQ-Dashboard和Java客户端访问示例
接上篇已经完成 RocketMQ5.0 环境的部署,就需要对这个环境进行测试,查看集群、写入消息、读取消息等。Docker部署 Dashboard:获取镜像并下载,部署服务。客户端连接:pom文件,生产者代码,消费者代码,接口测试,问题: broker资源不足无法提供服务

e2studio开发LPS28DFW气压计(1)----轮询获取气压计数据
本文将介绍如何使用 LPS28DFW 传感器来读取数据。主要步骤包括初始化传感器接口、验证设备ID、配置传感器的数据输出率和滤波器,以及通过轮询方式持续读取气压数据和温度数据。读取到的数据会被转换为适当的单位并通过串行通信输出。

一篇文章带你了解Harbor镜像是什么?
Harbor 是一个开源的企业级容器镜像仓库,它提供了安全、可靠且高效的镜像管理解决方案。它简化了镜像管理的复杂性,提高了开发人员的效率,并增强了镜像的安全性。此外,Harbor 还支持镜像的标签管理、版本控制和漏洞扫描,帮助用户确保镜像的安全性和可靠性。容器技术的快速发展推动了应用的现代化进程。开发人员可以将他们的镜像推送到 Harbor,然后其他团队成员可以从 Harbor 拉取这些镜像并在他们的环境中进行测试和部署。此外,Harbor 还提供了镜像签名和扫描功能,以确保镜像的完整性和安全性。

DevOps持续交付之容器化CICD流水线
随着DevOps⼤规模化的落地和应⽤,持续集成以及持续交付已经是⼀种常态的。CI指的是持续集成,使⽤的开源⼯具是Jenkins,CD指的是持续交付和持续部署,⼀个完整的软件开发⽣命周期为:主要流程可以具体为:构建阶段->单元测试阶段->部署阶段->⾃动化测试阶段->部署到⽣产环境阶段->度量和验证阶段。

2024 年软件工程将如何发展
人工智能、数字孪生技术、平台工程和混沌工程正在改变软件开发,并为开发运营带来更高的自动化、生产力和弹性。

idea配置docker推送本地镜像到远程私有仓库
安装docker私有仓库 idea配置docker 本地拉取远程私有仓库中的镜像

java中如何使用elasticsearch—RestClient操作文档(CRUD)
去数据库查询酒店数据,导入到hotel索引库,实现酒店数据的CRUD基本步骤如下。新建一个测试类,实现文档相关操作,并且完成JavaRestClient的初始化。方式一(全量更新):再次写入id一样的文档,就会删除旧文档,添加新文档。根据id查询到的文档数据是json,需要反序列化为java对象。(2)根据id查询数据库数据,并转换。方式二(局部更新):只更新部分字段。(1)创建文档对应实体。修改文档数据有两种方式。

Nodejs+Express搭建HTTPS服务
最近开发需要搭建一个https的服务,正好最近在用nodejs和express,于是乎想到就近就使用这两东西来搭建一个https的服务吧。这里搭建过程总共需要两步,第一步生成证书,第二步使用https模块启动服务。

什么是docker和docker-compose?这些概念你必须知道
Docker 是一种可以让您把 WordPress 应用和它需要的环境(比如 PHP、MySQL 等)打包成一个小盒子的技术,这个小盒子就叫做容器。容器的好处是,它可以在任何支持 Docker 的 Linux 机器上运行,而不用担心环境的差异和冲突。这样,您就可以把 WordPress 应用和环境一起移动和部署,而不用每次都重新安装和配置。Docker 的核心是 Docker 引擎,它是一个运行在 Linux 机器上的客户端-服务器应用,负责创建和管理容器。

使用Linux安装RStudio Server并实现远程访问
本文主要讲解如何使用Linux docker安装RStudio Server并实现远程访问

如何在本地Docker中部署MinIO服务并实现远程访问管理界面
MinIO是一个开源的对象存储服务器,可以在各种环境中运行,例如本地、Docker容器、Kubernetes集群等。它兼容Amazon S3 API,因此可以与现有的S3工具和库无缝集成。MinIO的设计目标是高性能、高可用性和可扩展性。它可以在分布式模式下运行,以满足不同规模的存储需求。MinIO是一个开源的软件,可以免费使用,还可以在普通硬件上运行,降低了存储成本,下面介绍在本地Docker中部署 MinIO 服务,并实现远程访问管理界面,节约云服务器运行成本.

Gitlab基础篇: Gitlab docker 安装部署、Gitlab 设置账号密码
安装docker gitlab前确保docker环境,如果没有搭建docker请查阅“Linux docker 安装文档”可以看到在docker ps -a 打印中看到 容器ID ps 展示的容器ID只时原来的一部分。修改docker镜像的gitlab容器端口前需要把gitlab容器以及docker镜像关闭。通过容器ID就能找到containers下具体哪一个是gitlab容器的配置。修改config.v2.json、hostconfig.json文件。docker 下载 gitlab容器。

docker搭建maven私库Nexus3
阿里代理地址:http://maven.aliyun.com/nexus/content/groups/public/由于nexus的默认端口为8081,我们在启动的时候改为18091后需要修改nexus的配置文件。这样就可以在本地浏览器进入nexus页面了,地址为 服务器ip:18091。右上角登录用户名为admin,密码为之前查看的密码。配置maven-central的代理地址。删除nuget开头的仓库。同时查看admin密码。

Linux安装JDK 并在 单台服务器 搭建多个tomcat version 1.8 并解决 多个tomcat 无法同时启动问题以及 关闭单个tomcat 导致其他tomcat一同关闭
假如 虚拟机没有配置网络JDK 1.8Tomcat-8。