是否可以将 docker 卷挂载到不同的文件系统?
Is it possible to mount docker volume to a different filesystem?
我正在从我的主机安装一个文件夹,其中包含大约 20GB 的 mongodb 文件。 Mongo 无法启动,因为它说没有足够的 space。似乎该卷正在装入 tmpfs 而不是使用硬盘。有什么方法可以更改卷的文件系统吗?
docker-撰写:
mongo:
image: mongo:2.4
volumes:
- /data/db:/data/db
Docker输出
mongo_1 | Wed May 4 20:55:12.591 [initandlisten] ERROR: Insufficient free space for journal files
机器内存:
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 1025388 241788 783600 24% /data/db
/dev/vda2 61886452 1128580 57591152 2% /data/configdb
/dev/vda2 61886452 1128580 57591152 2% /etc/resolv.conf
/dev/vda2 61886452 1128580 57591152 2% /etc/hostname
/dev/vda2 61886452 1128580 57591152 2% /etc/hosts
这可能是您 Mac 上的 Docker 测试版的问题。
运行 Docker 在 Centos 7.x 上,我做了:
mkdir ~/data
docker run --rm -it -v ~/data:/data/db mongo:2.4 bash
然后我从容器内部检查
# df
得到了
...
/dev/mapper/vg_root-root 29939424 6139352 23800072 21% /data/db
...
如您所料。它没有映射到 tmpfs。
我正在从我的主机安装一个文件夹,其中包含大约 20GB 的 mongodb 文件。 Mongo 无法启动,因为它说没有足够的 space。似乎该卷正在装入 tmpfs 而不是使用硬盘。有什么方法可以更改卷的文件系统吗?
docker-撰写:
mongo:
image: mongo:2.4
volumes:
- /data/db:/data/db
Docker输出
mongo_1 | Wed May 4 20:55:12.591 [initandlisten] ERROR: Insufficient free space for journal files
机器内存:
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 1025388 241788 783600 24% /data/db
/dev/vda2 61886452 1128580 57591152 2% /data/configdb
/dev/vda2 61886452 1128580 57591152 2% /etc/resolv.conf
/dev/vda2 61886452 1128580 57591152 2% /etc/hostname
/dev/vda2 61886452 1128580 57591152 2% /etc/hosts
这可能是您 Mac 上的 Docker 测试版的问题。
运行 Docker 在 Centos 7.x 上,我做了:
mkdir ~/data
docker run --rm -it -v ~/data:/data/db mongo:2.4 bash
然后我从容器内部检查
# df
得到了
...
/dev/mapper/vg_root-root 29939424 6139352 23800072 21% /data/db
...
如您所料。它没有映射到 tmpfs。