【发布时间】:2017-03-22 12:42:21
【问题描述】:
如果我想创建一个 15GB 的数据卷,它是 ext4 类型的,我该怎么做?
docker volume create --name vol 只是创建一个空卷。
docker volume create --opt type=ext4 --name vol 创建了一个 ext4 卷,但我无法指定它的大小,因为 ext4 根据 ext4 的挂载选项不支持它。
【问题讨论】:
标签: docker docker-volume
如果我想创建一个 15GB 的数据卷,它是 ext4 类型的,我该怎么做?
docker volume create --name vol 只是创建一个空卷。
docker volume create --opt type=ext4 --name vol 创建了一个 ext4 卷,但我无法指定它的大小,因为 ext4 根据 ext4 的挂载选项不支持它。
【问题讨论】:
标签: docker docker-volume
可以根据documentation 使用size 创建docker 卷时指定大小限制
这是文档中提供的用于指定相同的示例命令
docker volume create -d flocker -o size=20GB my-named-volume
更新来自git repository的更多示例:
Linux 上的内置 local 驱动程序接受类似于 linux 的选项 mount 命令:
$ docker volume create --driver local --opt type=tmpfs --opt device=tmpfs --opt o=size=100m,uid=1000
另一个例子:
$ docker volume create --driver local --opt type=btrfs --opt device=/dev/sda2
【讨论】:
The built-in local driver on Linux accepts options similar to the linux mount command,因为该信息未在官方 Docker 文档的任何相关页面上列出(docs.docker.com/compose/compose-file/…、docs.docker.com/storage/volumes 或 docs.docker.com/storage/storagedriver/select-storage-driver)。
mount 命令文档的链接:man7.org/linux/man-pages/man8/mount.8.html 和 tutorialspoint.com/unix_commands/mount.htm
使用 Docker Compose 我可以通过以下方式做到这一点:
volumes:
tmpfs:
# For details, see:
# https://docs.docker.com/engine/reference/commandline/volume_create/#driver-specific-options
driver: local
driver_opts:
o: "size=$TMPFS_SIZE"
device: tmpfs
type: tmpfs
【讨论】:
根据 Rao 的回答,现在他们的 docs.docker 页面上有一些更新的文档和示例:
此卷创建示例取自此页面:
$ docker volume create --driver local \
--opt type=tmpfs \
--opt device=tmpfs \
--opt o=size=100m,uid=1000 \
foo
【讨论】: