如果使用 docker 进行大规模开发,但是没有清理策略,那么的磁盘马上就会被填满,进而会影响整个ci/cd的流程。
docker积累的垃圾,包括:
- 已经停止的容器
- 远古镜像
- 磁盘卷
- 默认网络
清理停止的容器
docker rm -v $(docker ps --all --quiet --filter 'status=exited')
清理卷
docker rm --force $(docker images --quiet)
–force 意味着强制清理
清理网络
docker network rm $(docker network ls --quiet)
不过日常开发中,我一般使用如下命令来清理docker垃圾
docker system prune --volumes
如果要删除所有的,可以用以下命令:
docker system prune --all --force --volumes