本人github
在 Docker Compose 中,并没有直接删除镜像的命令。docker-compose
命令主要用于管理通过 Docker Compose 文件定义的服务、容器、网络和卷,而不是直接管理镜像。
但是,你可以在 docker-compose down
命令中使用 --rmi
参数来删除通过 Docker Compose 构建的镜像。以下是几种常见的用法:
-
删除通过 Docker Compose 构建的镜像:
docker-compose down --rmi local
这个命令会停止并删除容器、网络和卷,并且删除通过
build
选项构建的本地镜像。 -
删除所有镜像(包括通过 Docker Compose 构建的镜像和未使用的镜像):
docker-compose down --rmi all
这个命令会停止并删除容器、网络和卷,并且删除所有镜像,包括通过
build
选项构建的镜像和未被任何容器使用的镜像。
请注意,--rmi
参数只会删除通过 Docker Compose 构建的镜像,它不会删除通过 image
选项指定的镜像(即从 Docker Hub 或其他镜像仓库拉取的镜像)。
如果你想删除通过 image
选项指定的镜像,你需要在 docker-compose down
命令后再手动使用 docker rmi
命令删除这些镜像。
例如:
docker-compose down --rmi local
docker rmi mysql:5.7
docker rmi nginx:latest
这个命令序列会停止并删除容器、网络、卷以及通过 build
选项构建的镜像,然后手动删除 mysql:5.7
和 nginx:latest
镜像。
总的来说,虽然 Docker Compose 没有直接删除镜像的命令,但你可以通过组合使用 docker-compose down --rmi
和 docker rmi
命令来删除 Docker Compose 文件中使用的所有镜像。