温馨提示×

ubuntu docker如何清理缓存

小樊
38
2026-10-04 08:53:29
栏目: 智能运维

在 Ubuntu 上使用 Docker 时,常见的“缓存”主要包括:Docker 镜像/容器/卷/网络占用的空间、apt 等系统包缓存、以及构建缓存。下面按场景说明如何清理。


一、清理 Docker 自身占用的空间(最常用)

1. 查看 Docker 占用情况

docker system df

2. 一键清理(推荐)

docker system prune

会删除:

  • 停止的容器
  • 未被使用的网络
  • 悬空镜像(dangling images)
  • 构建缓存

3. 彻底清理(包括未使用镜像和卷,谨慎)

docker system prune -a --volumes

⚠️ 会删除:

  • 所有未被容器使用的镜像
  • 所有未被使用的 volume(数据会丢失)

二、清理具体资源

1. 删除所有停止的容器

docker container prune

2. 删除悬空镜像

docker image prune

3. 删除所有未使用镜像

docker image prune -a

4. 删除未使用的卷(数据会丢)

docker volume prune

5. 删除未使用的网络

docker network prune

三、Docker 构建缓存清理

1. 构建时禁用缓存

docker build --no-cache .

2. 清理 build cache

docker builder prune

清理全部构建缓存:

docker builder prune -a

四、Ubuntu 系统级缓存(非 Docker)

如果你在 Dockerfile 或容器内用了 apt:

1. 容器内清理 apt 缓存(写 Dockerfile 时)

RUN apt-get update && apt-get install -y xxx \
    && rm -rf /var/lib/apt/lists/*

2. Ubuntu 宿主系统清理

sudo apt-get clean
sudo apt-get autoclean
sudo apt-get autoremove

五、查看 Docker 存储位置(可选)

docker info | grep "Docker Root Dir"

默认一般是:

/var/lib/docker

六、常见安全清理命令汇总

docker system prune -a --volumes
docker builder prune -a

如果你能说明是宿主机空间不足、镜像太大,还是CI/CD 构建慢,我可以给你更针对性的方案。

0 踩