docker image ls
或者
docker images 两者的效果是一样的。
具体使用一样的可以使用docker image --help
。我们接下来将我们常用的。
查询显示虚悬镜像
docker images -f dangling=true
虚悬镜像是没有作用的,占用内存空间,虚悬镜像怎么来呢?一般是我们下载镜像,依赖一些中间镜像,然后我们删除了下载的镜像,但是只是删除了上层镜像,依赖的镜像没有删除。这样没有依赖的中间镜像就成了虚悬镜像,是可以删除的。
删除虚悬镜像
docker image prune
其他的一些查询操作。
#列出中间层镜像
docker images -a
#列出部分镜像
docker images 仓库名
#过滤
docker images -f since=仓库名
docker images -f before=仓库名
[](()删除镜像
我们现在知道怎么拉取镜像,以及在本地查看镜像,那我们想要删除镜像怎么删除呢?
docker image rm 镜像id
我们可以通过镜像id 来删除镜像,并且不用完整的镜像id ,只要可以做唯一区分就好了。
除了通过镜像id 来删除镜像,还可以通过以下的几种方式来删除,更过的可以通过docker image rm --help
来查看
删除所有仓库名为***的镜像
docker image rm $(docker images -q 仓库名)
删除仓库名在***之前的镜像
docker image rm $(docker images -q -f before=仓库名)
[](()容器的使用
====================================================================
上面讲了镜像的获取查看删除操作,那我们怎么根据镜像来操作相关的容器呢?
[](()创建和启动
前面说了镜像和容器的关系就像是对象和实例的关系。我们一般使用都是使用实例,一样的我们docker使用也是使用docker容器。
那我们怎么根据镜像来创建容器并使用它呢?
使用
docker run
比如我们前面下载了那么多Nginx,我们现在启动你nginx 试试。
docker run -p 8080:80 nginx:stable
-p 是用来指定映射端口的,8080是我们设置访问那个端口,80 是Nginx本身的端口。也可以后台启动
docker run -d -p 8180:80 nginx:stable
设置容器name
docker run --name myNginx -d -p 8280:80 nginx:stable
我们现在在浏览器上访问一下8080,8081,8082这几个端口,应该都可以访问的。
[](()终止容器
上面的容器启动了,我们现在想要停止容器,我们该怎么做呢?
如果我们没有后台启动,想要终止容器的话,直接Ctrl C 就可以退出来。如果我们是后台启动的,我们就需要通过
docker container stop 容器id
可以看到,删除的时候一样的不需要完整的id ,只要可以唯一区分就可以。
[](()查看容器
其实上面已经用到了如何查询容器。
docker container ls
这个是查看正运行的容器。查看所有容器使用
docker containe la -a
更多的命令可以查看
docker container ls --help
上图可以看到我已经停止了三个Nginx容器。用 -a 才会显示。
[](()重启容器
我们又想将关的容器重新启动,那怎么做
docker container start 容器id
#重启运行中的容器
docker container restart 容器id

[](()删除容器
docker container rm 容器id
删除运行中的容器
docker container -f 容器id