在fnOS中挂载Unraid的docker.img
请按以下步骤操作,将 docker.img 里的 volumes 数据提取出来:
第一步:创建挂载点并挂载
我们需要把这个镜像文件像插入 U 盘一样“挂载”到一个临时目录。
# 1. 创建临时目录
mkdir -p /mnt/docker_temp
# 2. 挂载镜像文件 (通常是 Btrfs 格式)
mount -o loop /vol1/system/docker/docker.img /mnt/docker_temp
如果提示文件系统错误,尝试指定类型:
mount -o loop -t btrfs /vol1/system/docker/docker.img /mnt/docker_temp
🚀 执行迁移操作
现在我们把挂载好的旧镜像数据,拷贝到这个新位置。
前提:
你需要先挂载旧的 docker.img 到 /mnt/docker_temp。
必须停止 Docker(防止数据库在拷贝时损坏)。
步骤 1:停止 Docker
systemctl stop docker
步骤 2:执行拷贝 (Rsync)
我们将旧镜像里的卷(比如 nextcloud 相关的)同步到新目录。
# 拷贝所有的卷
# 注意:目标路径结尾的斜杠 / 很重要
rsync -avP /mnt/docker_temp/volumes/. /vol1/docker/volumes/
/vol1为飞牛中的第一个存储池,根据实际情况调整
步骤 3:验证文件结构
拷贝完后,检查一下新目录。Docker 的标准卷结构必须是 卷名/_data。
ls -F /vol1/docker/volumes/
你应该看到里面有docker卷的文件夹。 如果有,那就对了。
步骤 4:恢复 Docker 并清理
启动 Docker:
systemctl start docker
验证:
docker volume ls
你应该能看到 nextcloud_aio_nextcloud 等卷已经出现在列表里了。
启动容器:
现在去启动你的 Nextcloud 容器,数据应该都在。
卸载旧镜像(确认一切正常后再做):
umount /mnt/docker_temp
rmdir /mnt/docker_temp
💡 小贴士
只拷需要的:volumes 目录下通常会有很多乱码名字(如 3d8a…)的文件夹,那些是匿名卷或临时数据。如果你只需要 Nextcloud、Plex 等重要数据,建议只挑有名字的文件夹拷(例如 rsync -avP /mnt/docker_temp/volumes/nextcloud* …)。
权限保留:rsync -a 参数非常关键,它保证了文件的所有者和权限不会变,这样容器启动时才不会报错 “Permission denied”。



文章有(14)条网友点评
Very good i like it
wish you all the best
每日AI工具导航
Mass comment blasting: $10 for 100k comments. All from unique blog domains, zero duplicates. I will provide a full report and guarantee Ahrefs picks them up. Email mailto:helloboy1979@gmail.com for payment info.If you received this, you know Ive got the skills.
香港服务器,4G8核18M宽带80G硬盘,只要一元钱!网址:host.993899.com
wish you best and best
色即是空,空即是色
无话可说,只是看看
wish you all the best
All the best
Enjoy every single day
Wish you happiness
Every day is a new beginning
Hahahaha You are so good