技术标签: 云原生 kubernetes Docker 容器 运维 docker
参数 | 作用 | 系统解释 |
---|---|---|
-a,--all |
展现出来所有状态的容器 | Show all containers (default shows just running) |
-f,--filter |
过滤显示 | Filter output based on conditions provided |
--format |
格式化显示 | Pretty-print containers using a Go template |
-n,--last |
显示n个最近创建的容器(包括所有状态) | Show n last created containers (includes all states) (default -1) |
-l, --latest |
显示最新创建的容器(包括所有状态) | Show the latest created container (includes all states) |
--no-trunc |
不要截断输出 | Don’t truncate output |
-q, --quiet |
仅显示容器id | Only display container IDs |
-s, --size |
显示总文件大小 | Display total file sizes |
[root@localhost ~]# docker ps #查看当前正在运行的容器
[root@localhost ~]# docker ps -a #查看所有运行过的容器
[root@localhost ~]# docker ps -aq
5aac14704d34(12位长度短ID)
49fcfe375189
[root@localhost ~]# docker ps -s For more information, refer to the container size on disk section.
SIZE 0B (virtual 204MB)
容器虚拟大小 = 容器真实增加大小 + 容器镜像大小
“size” 显示用于每个容器的可写层的数据量(在磁盘上)
“virtual size” 用于容器和可写层使用的只读image数据的磁盘空间总量
也可以使用 docker container ls 命令来观察当前系统正在运行的容器列表。
过滤一个条件就加一个–filter,也就是有几个条件命令行里面就得有几个 --filter。
过滤标志(-f或--filter
)格式是一个key=value对。如果有多个过滤器,则传递多个标志(例如 --filter “foo = bar” --filter “bif=baz”)
例如:docker ps -a --filter 条件1 --filter 条件2 --filter 条件3
条件支持正则,例如^以什么开头,$以什么结尾
过滤条件是以键值对的方式在后面列出来的,例如:status= exited
目前已知的条件
Filter Description
id 容器ID
name 容器名字
label 表示键或键值对的任意字符串。表示为< key >或< key>=<value >
exited 表示容器退出代码的整数。只对--all有用
status One of created, restarting, running, removing, paused, exited, or dead
ancestor 过滤共享给定image作为原始的容器。 Expressed as <image-name>[:<tag>], <image id>, or <image@digest>
before or since 过滤在给定容器ID或名称之前或之后创建的容器
volume 过滤运行已装载给定卷或绑定装载的容器
network 过滤连接到给定网络的运行容器
publish or expose 过滤发布或公开给定端口的容器。 Expressed as <port>[/<proto>] or <startport-endport>/[<proto>]
health 根据容器的运行状况检查状态过滤容器。 One of starting, healthy, unhealthy or none.
isolation 仅限Windows守护程序。 One of default, process, or hyperv.
is-task 过滤作为服务“task”的容器。 Boolean option (true or false)
[root@localhost ~]# docker ps -f name=^web #过滤以web开头的容器
[root@localhost ~]# docker ps -f name=eb2$ #过滤以eb2结尾的容器
[root@localhost ~]# docker ps -f status=exited #过滤状态是exit的容器
条件虽多,但万变不离其宗,只要再记住以下 3 条准则:
docker ps --filter id=abc --filter name=mysql
docker ps --filter name=mysql --filter name=redis --filter status=running
以上过滤条件会找出 name 包含 mysql 或 redis 并且 status 为 running 的容器。
docker ps --filter name=^/my$
精确匹配 name 为 my 的容器。注意,容器实际名称,开头是有一个正斜线 / ,可用 docker inspect 一看便知。
docker ps --filter name=.*qq.*
匹配 name 包含 qq 的容器,和 --filter name=qq 一个效果。
最后, 举一个复杂点的例子,用于清理名称包含 redis,且状态为 exited 或 dead 的容器:
docker rm $(docker ps -q --filter name=.*redis.* --filter status=exited --filter status=dead)
可选项前面的.
别落下了哈
- -format可选 | 功能显示 |
---|---|
.ID | 容器ID |
.Image | 镜像ID |
.Command | Quoted command |
.CreatedAt | 创建容器的时间 |
.RunningFor | 自容器启动以来经过的时间 |
.Ports | 暴露的端口 |
.State | 容器状态 (for example; “created”, “running”, “exited”) |
.Status | 包含持续时间和健康状况详细信息的容器状态 |
.Size | 容器磁盘大小 |
.Names | 容器名称 |
.Labels | 分配给容器的所有标签 |
.Label | 此容器的特定标签的值 For example ‘{ {.Label “com.docker.swarm.cpu”}}’ |
.Mounts | 该容器中装入的卷的名称 |
.Networks | 连接到此容器的网络的名称 |
举例说明
当使用--format
选项时,ps命令要么完全按照模板声明的方式输出数据,要么在使用table指令时也包括列标题。 以下示例使用不带标题的模板,并为所有正在运行的容器输出由冒号(:)分隔的ID和命令条目:
docker ps --format "{
{.ID}}: {
{.Command}}"
要以表格格式列出所有正在运行的容器及其标签,您可以使用:
docker ps --format "table {
{.ID}}\t{
{.Names}}\t{
{.Ports}}"
移除所有停止的容器
# docker container prune [OPTIONS]
--filter 提供过滤器值(例如,“until=<timestamp>”)
--force , -f 不提示确认
The filtering flag (--filter
) format is of “key=value”. If there is more than one filter, then pass multiple flags (e.g., --filter “foo=bar” --filter “bif=baz”)
▷ 目前支持的过滤器有:
until (<timestamp>)
仅删除在给定时间戳之前创建的容器
label (label=<key>, label=<key>=<value>, label!=<key>, or label!=<key>=<value>)
仅删除容器具有或者不具有, in case label!=… is used) 指定标签
这个过滤器可以是Unix时间戳、日期格式的时间戳或相对于守护程序机器的时间计算的Go持续时间字符串(例如10m、1h30m)。日期格式时间戳支持的格式包括RFC3339Nano, RFC3339, 2006-01-02T15:04:05, 2006-01-02T15:04:05.999999999, 2006-01-02Z07:00, and 2006-01-02. The local timezone on the daemon will be used if you do not provide either a Z or a ±00:00 timezone offset at the end of the timestamp. 当提供Unix时间戳时,输入秒[纳秒], 其中seconds是自1月1日以来经过的秒数, 1970 (midnight UTC/GMT), not counting leap seconds (aka Unix epoch or Unix time),和可选的。纳秒字段是一秒的几分之一,长度不超过九位数。
▷ 标签过滤器接受两种格式:
One is the label=… (label= or label==) 它移除带有指定标签的容器。
The other format is the label!=… (label!= or label!==) 它移除没有指定标签的容器。
以下内容删除5分钟前创建的容器:
docker ps -a --format 'table {
{.ID}}\t{
{.Image}}\t{
{.Command}}\t{
{.CreatedAt}}\t{
{.Status}}'
docker container prune --force --filter "until=5m"
以下内容删除2017-01-04T13:10:00之前创建的容器:
docker container prune --force --filter "until=2017-01-04T13:10:00"
It’s too crowded halfway up the mountain. I have to go to the top.
文章浏览阅读333次。用到命令 1. 克隆代码 git clone https://github.com/mrxiaoyu100001/Android-.git 2. git add . // 添加本地缓存区 3. git commit -m ‘备注’ //推送到本地库 4. git push origin //推送到远程库 5. git log -p -2 // 查看最近两次提交版本的日...
文章浏览阅读1.4k次。最近做一个基于minigui/mgncs的项目,在开发阶段因为是在ubuntu下基于minigui的模拟器开发,所以编译时都是标准的动态库连接。没啥问题,很顺序。现在项目功能开发告一段落,要向嵌入式平台移植了,就要把编译改为全静态连接(--static)。问题就来了。编译正常,连接时报了如下一大堆错误:/usr/lib/x86_64-linux-gnu/libxml2.a(nanohttp...._x86_64-linux-gnu/liblzma.so.5
文章浏览阅读1.8k次。SLAM是Simultaneous Localization and Mapping的缩写,意为“同时定位与建图 (同步定位与地图构建)”,是业界公认视觉领域空间定位技术的前沿方向。它是指运动物体自身位置不确定的条件下,根据传感器的信息,一边计算自身位置,一边构建环境地图的过程,同时利用地图进行自主定位和导航。它主要用于解决机器人在未知环境运动时,如何通过对环境的观测确定自身的定位和运动轨迹,同时构建出周围环境的地图。_gloslam
文章浏览阅读692次,点赞11次,收藏16次。自己制作目标检测与分割数据集,与COCO数据集类似。在Mask-rcnn算法中进行训练以及预测推理验证。_推理数据集如何制作
文章浏览阅读1.6k次。Intent 是Android程序中各个组件之间进行交互的一种重要方式,不仅可以指明当前组件想要执行的动作,还可以在不同组件中传递数据。我们一般可以用Intent启动活动(Activity)、启动服务(service)、以及发送广播(broadcastreceiver)等。Intent用法大致分为两种,一种是显式Intent,一种是隐式Intent。一、显式IntentIntent有多个构造函数的..._android隐士广播和显示广播
文章浏览阅读622次。雨后一切如故。disable所有的闹钟看自己自然醒能醒出什么出息,结果同样自然的是没有出息风伴在车窗边一路。“吹风”的体会与词汇现在想来共富于恐怖意味,引发许多对现状的失望。听多了“萧大哥出来吹风啊”这样的话,即让自己感到无奈又让别人感到颓废还好没有醉在这美好的风中,没有醉在这悄然降临的季节终于又是一个秋天丛树环绕的考场狭窄而简陋。恍惚中看见落满灰尘的显示器映出许多张脸。他们买到奥利维拉了。._isv-certified
文章浏览阅读1.5k次,点赞2次,收藏5次。最近的学习越来越虚浮,对于框架了解,仅存在于怎么用,但是至于为什么会这样,却一无所知.趁现在有点空闲的时间,将cas分析了一遍.cas的诞生是为了解决单点登录问题,本质还是为了解决session的共享问题.假设我的spring security不整合cas,那么怎么解决单点登录,也许你会想到许多类似cas的框架,但是若是没有这些框架,你要怎么实现:1.将session复制到每一个服务器?那么..._cas tgc
文章浏览阅读1k次。回到顶部(Back to Top)一、学术检索资源50 超星 http://www.chaoxing.com51 国家知识产权局 http://www.sipo.gov.cn52 国家标准化管理委员会 http://www.sac.gov.cn53 国家专利检索系统 http://www.pss-system.gov.cn/sipopublicsearch/portal/uiIndex.shtml54 国家标准化检索系统 http://www.sac.gov.cn/SACSe_csdn科技信息检索与论文写作
文章浏览阅读3.4w次,点赞58次,收藏323次。完全图、连通图、非连通图、连通分量、强连通图、生成树的概念_连通图
文章浏览阅读520次。android 6.0更新于10月5日更新,相信不少人已经更新了。我这里由于某些原因,之前Nexus5(以下简称N5)一直用的是MIUI,因此此次OTA推送并不适合我,只能采取线刷的方法,手动将android 6.0正式版刷入。其实手动刷入,也就是线刷,本身不是太难,但是在这个过程中由于一些小问题,导致花了1个半小时才完全搞定这个简单的过程,在这里我记录一下,方便参考。下载android6.0官方..._6.0zip安卓原生包
文章浏览阅读1w次,点赞79次,收藏140次。1、查找SpringBoot和SpringCloud版本对应关系2、查找SpringCloud和SpringCloud Alibaba版本对应关系3、查找SpringBoot和SpringCloud Alibaba版本对应关系_spring cloud alibaba 与 spring cloud对照关系
文章浏览阅读2.8w次。文章目录前言并发程序幕后的故事源头之一:缓存导致的可见性问题源头之二:线程切换带来的原子性问题源头之三:编译优化带来的有序性问题前言如果你细心观察的话,你会发现,不管是哪一门编程语言,并发类的知识都是在高级篇里。换句话说,这块知识点其实对于程序员来说,是比较进阶的知识。我自己这么多年学习过来,也确实觉得并发是比较难的,因为它会涉及到很多的底层知识,比如若你对操作系统相关的知识一无所知的话,那去理解一些原理就会费些力气。这是我们整个专栏的第一篇文章,我说这些话的意思是如果你在中间遇到自己没想通的问题,_java 线程原子性 可见性 有序性