我在boot2docker上玩卷容器,以在MacOS X上运行Docker。
boot2docker version
Client version: v1.2.0
Git commit: a551732
我正在尝试执行Docker's documentation中提到的备份/还原过程。
我正在尝试备份超过2 GB的MySQL数据库。当我运行备份命令时:
docker run --volumes-from data_volume -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /var/lib/mysql
...如果失败并出现此错误:
tar: /backup/backup.tar: Wrote only 4096 of 10240 bytes
tar: Error is not recoverable: exiting now
似乎
tar
磁盘空间不足。因此,我进入了容器,查看了主机绑定(bind)挂载,其大小为1.8 GB 。docker run -t -i -v $HOME:/demo ubuntu /bin/bash
root@bb3921a48ba4:/# df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 19G 8.3G 9.1G 48% /
none 19G 8.3G 9.1G 48% /
tmpfs 1005M 0 1005M 0% /dev
shm 64M 0 64M 0% /dev/shm
/dev/sda1 19G 8.3G 9.1G 48% /etc/hosts
tmpfs 1.8G 1.8G 0 100% /demo
tmpfs 1005M 0 1005M 0% /proc/kcore
您可以看到
/demo
仅为1.8G ...我不知道如何扩展此大小,因此我可以进行大型备份...
任何的想法?谢谢!
最佳答案
我有一种偷偷摸摸的感觉,您的内存不足-因为2GB是我们分配的RAM的默认数量。
建议您运行tar输出到STDOUT,然后将其通过管道传输到本地盒,而不是写入映射到与OSX盒FS相连的虚拟文件系统的文件。
即docker run --rm ubuntu tar cf - /etc > test.tar
关于docker - boot2docker主机绑定(bind)安装卷大小限制为1.8 GB,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25821879/