docker容器和镜像的停止和删除

Contents

docker 容器和镜像的停止和删除

1.列出所有 docker 镜像

$ docker images

docker images

  • repository:存储库
  • tag:用于版本控制
  • image id:镜像的ID
  • created:创建时间
  • size:镜像大小

存储库和镜像ID分析

(1)repository-存储库:此时为 dockerhub 中的 nginx 官方仓库,若为私有仓库,格式一般为 demo.harbor.com/demo/nginx:tag

$ docker login --username = $username $url

登陆仓库,并输入密码

$ docker pull $image_url

从仓库中拉取镜像

$ docker images

查看镜像列表

私有镜像格式

(2)image id-镜像的 ID:镜像 ID 唯一的表示一个镜像, ID 值是根据该镜像的数据配置文件使用 sha256 算法计算获得。文件存放在 /var/lib/docker/image/overlay2/imagedb/content/sha256 目录中。

image id存放位置

与上图两个 images 的 image id 对比一致。

打开第一个 nginx 的文件查看

$ cat 4f380adfc10f4cd34f775ae57a17d2835385efd5251d6dfe0f246b0018fb0399 | python -m json.tool

nginx sha256文件

可以看出确实是配置文件

我们再将此文件的 sha256 值计算出来

$ sha256sum 4f380adfc10f4cd34f775ae57a17d2835385efd5251d6dfe0f246b0018fb0399

image配置文件的sha256值计算

可以看出这个文件的 sha256 值等于文件名,也等于 image id

2.查看正在运行的、或所有的 docker 容器

  1. 查看正在运行的 docker 容器
$ docker ps
  1. 查看所有的 docker 容器

这个命令也会显示未启动的容器信息

$ docker ps -a

显示 docker 容器

3.停止所有容器

$ docker stop $(docker ps -aq)

docker stop 操作的对象是 container id 而不是 image name

docker stop all

4.删除所有容器

$ docker rm $(docker ps -aq)

和停止容器同样, docker stop 操作的对象也是 container id

docker delete all container

5.删除所有镜像

通过 image name 删除单个镜像

$ docker image rm $image_name

delete images by image name

通过 image id 删除单个镜像

$ docker rmi $image_id

delete images by image id

删除所有镜像

$ docker rmi $(docker images -q)

delete all images

6.删除所有停止的容器

$ docker container prune -f

delete unused containers

7.删除所有不使用的镜像

$ docker image prune --force --all 
//或者 
$ docker image prune -f -a

delete unused images

5 4 投票数
文章评分
订阅评论
提醒
guest
0 评论
内联反馈
查看所有评论
下一篇
0
希望看到您的想法,请您发表评论x