3 回答
TA貢獻1829條經驗 獲得超9個贊
docker system prune-a
docker image prune -a-a.
docker system prune --all
docker xxx prune--filter
目前支持的過濾器是:
until (<timestamp>)-僅刪除在給定時間戳之前創建的容器、圖像和網絡 label(label=<key>,label=<key>=<value>,label!=<key>,或 label!=<key>=<value>)-只使用(或)刪除容器、圖像、網絡和卷。 無
,以防萬一 label!=...指定的標簽。
docker rmi $(docker images --filter "dangling=true" -q --no-trunc)
drmi
這個 dangling=true篩選器查找未使用的圖像
alias drmae='docker rm $(docker ps -qa --no-trunc --filter "status=exited")'
從技術上講, 在清理圖像之前,您應該先清理容器,因為這樣可以捕獲更多的懸空圖像和較少的錯誤。.
dcleanup(){
docker rm -v $(docker ps --filter status=exited -q 2>/dev/null) 2>/dev/null
docker rmi $(docker images --filter dangling=true -q 2>/dev/null) 2>/dev/null
}docker-gc:
一個簡單的Docker容器和圖像垃圾收集腳本。
一個多小時前離開的容器被移除。 刪除后不屬于任何剩余容器的圖像。
TA貢獻2051條經驗 獲得超10個贊
$ docker images --no-trunc --format '{{.ID}} {{.CreatedSince}}' \
| grep ' months' | awk '{ print $1 }' \
| xargs --no-run-if-empty docker rmi-f
/etc/cron.daily/docker-gc
#!/bin/sh -e
# Delete all stopped containers (including data-only containers).
docker ps -a -q --no-trunc --filter "status=exited" | xargs --no-run-if-empty docker rm -v
# Delete all tagged images more than a month old
# (will fail to remove images still used).
docker images --no-trunc --format '{{.ID}} {{.CreatedSince}}' | grep ' months' | awk '{ print $1 }' | xargs --no-run-if-empty docker rmi || true
# Delete all 'untagged/dangling' (<none>) images
# Those are used for Docker caching mechanism.
docker images -q --no-trunc --filter dangling=true | xargs --no-run-if-empty docker rmi
# Delete all dangling volumes.
docker volume ls -qf dangling=true | xargs --no-run-if-empty docker volume rm添加回答
舉報
