1. 查看当前docker的存储目录的目录名
docker info #查看docker的信息
如上图,可知我的docker的目录地址为/var/lib/docker
2. 查看所有硬盘,并从中选择一个空闲的硬盘,并分配你所需要扩容的大小
fdisk -l #查看所有硬盘
如上图,我这里有个1TB的硬盘用了500G(要求是把docker的存储目录扩到200G),那用这个硬盘就够了。步骤如下:
ps:如果是没使用的新硬盘,选择label type为dos。
- 对这个硬盘先新增一个空的分区,并分配200G
cfdisk /dev/sdb #对sdb这个硬盘进行分区
执行上面的命令后,进入分区页面。如下
用向下键,到选择Free space后,如上图一样,按回车键即可到下图,删除之前的524G,改成输入200G。
按回车键即可到下图,选择primary不变,再次按回车键
就出现了新的分区/dev/sdb3,然后按右方向键,到选择Write。如下图
输入yes,再次按回车键。如下图
然后回到分区页面后,选择Quit,按回车键就退出该硬盘的分区了。200G的新分区也就新建完成了。
- 格式化这个新分配的分区
mkfs.ext4 /dev/sdb3
3. 将你新分出来的分区挂载到docker的目录中
- 将准备用于容器存储的盘挂载到一个临时目录,并将/var/lib/docker中的文件拷贝到新的存储位置中
mkdir /tmp/docker#创建临时目录
mount /dev/sdb3 /tmp/docker #将临时目录挂载到新分区
cp -r /var/lib/docker/* /tmp/docker #将docker目录中的所有文件拷贝到临时目录
- 将磁盘卸载,并挂载到/var/lib/docker
umount /dev/sdb3 #卸载新分区
mount /dev/sdb3 /var/lib/docker #将目录挂载到新分区
执行完上面所有步骤后就可以查看是否扩容成功了
df -h #查看磁盘使用情况
4. 如果需要开机自动挂载,还要执行以下几步;如果不用,到第3点就可以了
- 查看设备的uuid,并复制对应的uuid
ls -l /dev/disk/by-uuid/
- 修改/etc/fstab文件。将复制的uuid和要挂载的地址写入/etc/fstab文件。格式如下
- 保存即可