【Docker学习】docker run的标签相关选项(-l, –label, –label-file)

本文详细介绍了如何在Docker中使用`-l`和`--label`选项为容器设置元数据,以及`--label-file`用于批量添加标签的方法。通过例子展示了如何查看和筛选带有特定标签的容器。
摘要由CSDN通过智能技术生成

选项-l,–label

-l是–label的简写,可以在使用docker run命令时,为要创建的容器提供元数据(metadata)。

请看下面的bash指令,该指令使用docker run运行alpine容器,并使用-l设置MY_CONTAINER_ID和MY_CONTAINER_NAME两个标签,并使用-d进行后台运行,-it以交互模式访问alpine。

docker run -dit -l MY_CONTAINER_ID=1 -l MY_CONTAINER_NAME=my-alpine alpine

我们使用docker ps查看,以–filter作为筛选条件,指定显示元数据是MY_CONTAINER_ID的标签容器

docker ps --filter "label=MY_CONTAINER_ID"

可以看到正常显示出我们创建好的容器。

我们还可以使用docker inspect 命令来查看容器的低级信息。

docker inspect silly_merkle

可以看到,Labels包含了我们传递给容器两个标签。

备注:类似alpine这种类linux系统的容器,docker run时,必须使用-dit(-d,-i和-t的组合)选项,否则启动容器后,容器因为没有可进行的操作而退出。docker ps是发现不了创建好的容器的。

选项–label-file

顾名思义,这个选项可以将提供给它的一个文件中的标签设置给容器。

上图是我创建的一个label-file文件,该文件设定了两个标签MY-CONTAINER-COLOR和MY-CONTAINER-WEIGHT,那么再来一次指令来测试效果:

docker run -dit --label-file ./label-file  alpine

结果如下:

我们可以看到,通过docker ps可以列出前后两个以alpine为镜像的容器competent_brattain和silly_merkle。但通过–filter过滤的容器,只有competent_brattain。

备注:

  1. label-file文件名任意取,叫什么都可以。
  2. 以#开头的行会被视为注释而被忽略,其它位置的#会被作为变量的一部分。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值