查询已有镜像
docker images -a
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiI0gTMx81dsQWZ4lmZf1GLlpXazVmcvwFciV2dsQXYtJ3bm9CX9s2RkBnVHFmb1clWvB3MaVnRtp1XlBXe0xCMy81dvRWYoNHLwEzX5xCMx8FesU2cfdGLwMzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsYTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cmbw5SO4YTM2QjZkljMjVTY0ImNzYzXyEjNzQTM5AzLcFTMyIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjLyM3Lc9CX6MHc0RHaiojIsJye.png)
根据镜像ID删除指定镜像
根据镜像ID来删除指定镜像
docker rmi bbf6571db497
再次查询已经没有这个镜像
指定镜像已有容器
但是如果你使用这个镜像已经有了这个镜像的实例,这样直接删除是不行的
镜像是类,容器是对象
比如,我先使用这个镜像运行一个实例 xt-mysql
docker run -p 13306:3306 --name xt-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8
Docker run 命令
-p 3306:3306 容器暴露3306端口,并指定宿主机3306端口与其通信(: 之前是宿主机端口,之后是容器需暴露的端口)
-e 指定mysql 容器登录的密码
–name 为容器指定名字
-d 后台运行容器,并返回容器ID
我们可以看到xt-mysql的容器已经在运行
根据镜像ID删除指定镜像
docker rmi bbf6571db497
发现不能删除,镜像正在被容器ID为bbdc426a8514 的容器使用
就算容器没有在运行,也是不能删除这个镜像的
不依靠他的报警信息,我们也可以使用命令,找出指定镜像所生成的容器
docker ps -a | grep mysql:8
根据容器名称或ID来删除指定容器,发现容器正在运行,需要我们先停止这个容器的运行
停止容器的运行
docker stop xt-mysql
然后再删除指定容器
docker rm xt-mysql
删除镜像的所有容器之后,删除指定镜像(镜像名或者镜像ID都可以)
docker rmi mysql:8
总结:
删除镜像的命令: i是镜像image的缩写
docker rmi
docker rm