赞
踩
docker images | grep "^" | awk "{print $3}":获取镜像ID
docker ps -a| grep bryce-demo | awk '{print $1}:获取docker容器ID
先通过
docker ps -a
获取docker容器列表,再通过grep 获取与bryce-demo相关的容器,通过awk 打印第一个字段,也就是容器id.上述写法有些不妥就是在grep匹配出多条的时候出现问题,所以下面展示一个更细粒度的写法:
docker ps -a| grep bryce-demo | head -1|awk '{print $1}'
加了一个
head -1
获取第一条数据,相反还有tail -1
获取最后一条,当存在多条时,可以自己调整.第二种写法,也是docker官方提供的:
docker ps -aq --filter name=bryce-demo
这个同样会出现当name能匹配多个的实现多个容器id的问题
docker 1.13 中增加了
docker system prune
的命令,针对container、image可以使用docker container prune
、docker image prune
命令。
docker image prune --force --all
或者docker image prune -f -a : 删除所有不使用的镜像docker container prune -f
: 删除所有停止的容器
进入指定容器执行命令:
docker-compose exec nginx bash
docker-compose exec web python manage.py migrate --noinput
使用当前目录的 Dockerfile 创建镜像,标签为 runoob/ubuntu:v1
docker build -t runoob/ubuntu:v1 .
docker network connect 命令是用于将docker容器连接到某个网络中,或者与其他容器建联,容器可以使用容器名或者容器ID。
举几个栗子:
1. 将运行中的容器ctn1 连接/断连 到网络net1中,
$ docker network connect net1 ctn1
or
$ docker network disconnect net1 ctn1
2. 在启动容器ctn1时,连接到网络net1上,$ docker run -itd --network=net1 ctn1
3. 给容器分配指定ip(192.168.10.10)$ docker network connect --ip 192.168.10.10 net1 ctn1
4. 使用--link实现两个容器互连--link:在启动my-ctn2容器时,建立my-ctn1和my-ctn2容器间的连接,此时会在my-ctn2容器的/etc/hosts中添加域名解析。并且当容器IP变化时,docker会自动维护映射关系
$ docker network connect --link my-ctn1 my-ctn2
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。