我计划将 docker 数据(图像和容器)移动到单独的驱动器,因为它们需要很多空间。
据我所知,我可以移动/var/lib/docker
到单独的驱动器并创建指向它的软链接。但我读过 BTRFS 是 docker 的最佳文件系统选项。
但我怀疑将外部驱动器格式化为 BTRFS 并将现有文件夹移动到它是不够的。正如我所见,此文件夹的内容取决于使用的文件系统。
如何在具有不同文件系统的外部驱动器上正确移动(重新创建)docker 文件夹(图像和容器)?
正如您所说,简单地将 docker 图像/容器从默认 AUFS 移动或复制到 BTRFS 格式的驱动器是行不通的。因此,作为第一步,您可以将所有容器作为图像提交并使用docker save
命令将图像保存为 .tar 文件,然后一旦您准备好 docker 使用 btrfs,您就可以docker load
将图像加载到新的存储驱动程序中。
步骤大致如下 - 这是我在我的 Ubuntu 14.10 盒子中所做的 -
docker save IMAGEID > /tmp/redis.tar
mkfs.btrfs /dev/sdb mkdir /var/lib/docker-btrfs 挂载 /dev/sdb /var/lib/docker-btrfs/
服务码头停止 docker -d -s btrfs --graph="/var/lib/docker-btrfs" -H unix:///var/run/docker.sock
上述步骤也可以通过修改/etc/default/docker来完成。
docker load --input /tmp/redis.tar
您应该能够从这里查看图像并运行容器。对于容器,您也可以尝试export
和import
方法,不过我从未尝试过。
归档时间: |
|
查看次数: |
5353 次 |
最近记录: |