公司业务在生产环境100多台服务器上用了docker,已经有大半年了,可是最近发现,每个服务器上的各种镜像好多好乱,有没有什么办法可以批量安全地删除?
公司业务在生产环境100多台服务器上用了docker,已经有大半年了,可是最近发现,每个服务器上的各种镜像好多好乱,有没有什么办法可以批量安全地删除?
方法很多,可以试试下面这两个命令
批量删除镜像
docker images | awk '{print $3}' | xargs docker rmi
批量删除容器
docker ps -a | awk '{print $1}' | xargs docker rm
如果需要根据具体的容器名或镜像名过滤的话,可以修改上面的awk表达式进行处理。
类似这样,删除test_开头的镜像:
docker rmi -f $(docker images --format "{{.Repository}}" |grep "^test_*")
2 回答1.1k 阅读✓ 已解决
1 回答748 阅读✓ 已解决
1 回答682 阅读
删除停止的容器
docker rm $(docker ps --all -q -f status=exited)
删除没有使用的镜像
docker rmi -f $(docker images | grep "<none>" | awk "{print \$3}")