创建虚拟磁盘

我们的/目录通常空间有限。在Docker的使用过程中,Docker的工作目录/var/lib/docker会占用非常大的空间,导致系统空间占满无法工作。此时我们可以创建虚拟磁盘,挂载到/var/lib/docker目录,从而给Docker来使用。

创建磁盘文件

创建磁盘文件有3种方法。

dd命令

1
2
# 创建一个大小为1GB,名为docker.img的文件
dd if=/dev/zero of=docker.img bs=1M count=1024

缺点:需要消耗真正写入1GB大小的时间和写入量

truncate命令

1
2
# 创建一个大小为100GB,名为docker.img的文件
truncate -s 100g docker.img

优点:不会真正写磁盘,速度很快

缺点:磁盘配额没有消耗,可以分配超过磁盘总大小的文件,在写入过程中如果物理空间不足会引起错误。

fallocate命令

1
2
# 创建一个大小为100GB,名为docker.img的文件
fallocate -l 100g docker.img

优点:不会真正写磁盘,速度很快。会分配磁盘配额,且物理空间上会尽量安排连续空间,提升后续写入性能。

在虚拟磁盘文件上创建文件系统

1
mkfs.ext4 docker.img

挂载这个虚拟磁盘文件到某个挂载点

1
mount docker.img /var/lib/docker