docker清除空间

2024-07-08 08:15:03 浏览数 (1)

查看Docker的磁盘使用情况

代码语言:javascript复制
docker system df

docker提供了一些快捷的命令去清除未使用的容器,网络和镜像:

代码语言:javascript复制
$ docker system prune
WARNING! This will remove:
        - all stopped containers
        - all networks not used by at least one container
        - all dangling images
        - all dangling build cache
代码语言:javascript复制
# 1. 清理所有处于停止状态的容器
docker container prune

# 2. 清理未被标记的镜像
docker image prune

# 3.1 清理未使用的镜像
docker images --filter dangling=true

# 3.2 如果您确定要删除这些镜像,请运行以下命令:

docker images --filter dangling=true -q | xargs docker rmi

# 4.1 清理未运行的容器

docker ps -a --filter status=exited --filter status=dead

# 4.2 如果您确定要删除这些容器,请运行以下命令:

docker ps -a --filter status=exited --filter status=dead -q | xargs docker rm


# 5.1 清理未使用的卷 

docker volume ls --filter dangling=true

# 5.2 如果您确定要删除这些卷,请运行以下命令:

docker volume ls --filter dangling=true -q | xargs docker volume rm

调整Docker的日志级别 Docker的日志级别默认为debug,可能会导致日志文件占用大量空间。您可以通过编辑/etc/docker/daemon.json文件来调整日志级别,例如:

代码语言:javascript复制
{
    "log-driver": "json-file",
    "log-opts": {
        "max-size": "10m",
        "max-file": "3"
    }
}

查看正在运行的容器

代码语言:javascript复制
$ docker container ls -aq

停止所有的容器

代码语言:javascript复制
$ docker container stop $(docker container ls -a -q)

完整的清除命令

代码语言:javascript复制
$ docker container stop $(docker container ls -a -q) && docker system prune -a -f --volumes

或者是限制容器的日志大小

修改deamon.json 配置

代码语言:javascript复制
{
    "log-opts": {
        "max-size" : "521m"
    }
}

修改docker-compose;

代码语言:javascript复制
json
复制代码

0 人点赞