温馨提示×

ubuntu镜像怎样节省空间

小樊
41
2026-09-22 14:17:43
栏目: 云计算

在 Ubuntu(无论是系统镜像、Docker 镜像,还是虚拟机镜像)中“节省空间”,可以从系统层面和镜像构建层面两个角度来做。下面分场景说明,最常用的是 Docker Ubuntu 镜像优化 和 系统/虚拟机镜像瘦身。


一、Docker Ubuntu 镜像节省空间(最常见)

1. 使用更小的基础镜像

不要用 ubuntu:latest(通常 >70MB),可选:

  • ubuntu:slim(更小,约 30MB)
  • alpine(非 Ubuntu,但极小,约 5MB)
FROM ubuntu:slim

2. 合并 RUN 命令,减少层

每一层都会占用空间:

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

⚠️ 一定要清缓存:

rm -rf /var/lib/apt/lists/*

3. 安装后清理无用内容

apt-get clean
rm -rf /var/lib/apt/lists/*
rm -rf /tmp/*

4. 不安装推荐包

apt-get install -y --no-install-recommends curl

5. 多阶段构建(适合编译型程序)

FROM ubuntu AS build
RUN apt install -y gcc && gcc main.c -o app

FROM ubuntu:slim
COPY --from=build /app /app

二、Ubuntu 系统 / 虚拟机镜像瘦身

1. 删除不用的软件包

sudo apt autoremove
sudo apt purge snapd

2. 清理缓存和日志

sudo apt clean
sudo rm -rf /var/cache/apt/archives/*
sudo journalctl --vacuum-time=7d

3. 删除多余内核

dpkg -l | grep linux-image
sudo apt purge linux-image-旧版本

4. 关闭/删除 snap(非常大)

sudo snap remove --purge lxd
sudo apt purge snapd

5. 压缩镜像(虚拟机)

  • QCOW2:qemu-img convert -O qcow2
  • VMDK / VDI:导出再导入
  • 使用 zerofree 清零空闲空间后压缩

三、制作最小 Ubuntu 镜像(高级)

使用 debootstrap

sudo debootstrap --variant=minbase focal /mini-ubuntu

可做到 <50MB 的可用系统。


四、快速对比建议

场景 推荐做法
Docker ubuntu:slim + 清缓存
云镜像 删 snap + autoremove
本地 VM 压缩 + 清日志
极致小 debootstrap / Alpine

如果你能说明是 Docker / 虚拟机 / 云服务器 / 自制 ISO,我可以给你更精确的命令。

0 踩