收起左侧

解决Docker v29挂载到系统盘导致占满

0
回复
34
查看
[ 复制链接 ]

4

主题

6

回帖

0

牛值

江湖小虾

悬赏1飞牛币未解决

飞牛 NAS 的这个“坑”确实是因为 Docker v29 引入了 containerd 作为后端存储驱动,而系统默认只搬了 Docker 的家,没搬 Containerd 的家。

首先可以通过磁盘分析工具查看都是什么东西占满了系统盘(排除挂载的盘,如我的是vol1和vol2):

sudo apt update && sudo apt install ncdu -y
# 扫描系统盘,排除大数据盘
sudo ncdu / --exclude /vol1 --exclude /vol2 --exclude /fs

发现里 /var/lib/containerd有很多东西,这说明我们的containerd

验证:

sudo du -sh /var/lib/containerd

如果发现输出都是以 /var/lib/containerd/开头的说明就是在系统盘。

  1. 停止服务
sudo systemctl stop docker
sudo systemctl stop containerd
  1. 拷贝containerd到你想要的磁盘(如vol2下)
sudo mkdir -p /vol2/docker/containerd_new
sudo rsync -avz /var/lib/containerd/ /vol2/docker/containerd_new/
  1. 修改containerd配置文件,找到root目录
sudo nano /etc/containerd/config.toml
# 默认是 root = "/var/lib/containerd"
# 修改为你的数据盘路径:
root = "/vol2/docker/containerd_new"
  1. 重启服务
sudo systemctl daemon-reload
sudo systemctl start containerd
sudo systemctl start docker

如果服务重启没问题后,即可将源目录删除掉释放空间

收藏
送赞
分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则