我在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/

10-12 22:05