docker容器卷空间值扩容

热扩容问题查看https://blog.csdn.net/qq_39562468/article/details/102918354

docker安装完毕之后,默认分配磁盘池的空间只有100G。
启动一个容器时,默认容器空间大小是10G。
当我们需要对容器进行磁盘扩容的话,我们需要按以下步骤操作。
扩大磁盘池
先查看你的池大小
docker info

关闭docker并删除docker数据
systemctl stop docker
rm -rf /var/lib/docker
创建新的docker数据池
mkdir -p /var/lib/docker/devicemapper/devicemapper
dd if=/dev/zero of=/var/lib/docker/devicemapper/devicemapper/data bs=1G count=0 seek=600
重新启动容器之后,再查看池大小
systemctl restart docker
dokcer info

2. 静态扩大容器空间
启动的时候指定,容器使用的空间大小。
docker run -itd -h test --name test --storage-opt size=70G centos
docker exec test df -Th

3. 动态扩大容器空间
如果你的宿主机文件系统是ext4,那么可以进行动态扩大容器空间。但是如果宿主机的文件系统是XFS,那么不可以使用动态扩大容器空间。
ext4文件系统动态扩大容器空间
查看正在运行的容器使用的卷
ll /dev/mapper
···
收集卷名,如:
docker-8:4-1610614383-c0850e6fedcf9499dfeb01d9c0147c6bd5a0051ed44f0e65937cc191e8fdb5af
···
查询当前卷的信息表
dmsetup table docker-8:4-1610614383-c0850e6fedcf9499dfeb01d9c0147c6bd5a0051ed44f0e65937cc191e8fdb5af
···
0 146800640 thin 253:0 50
···
146800640是指设备的大小,表示有146800640个 512-bytes 的扇区,所以卷的大小略高于 10GB 的大小。
计算扇区(42G)
echo $((42*1024*1024*1024/512))
···
88080384
···
只修改设备的大小
echo 0 88080384 thin 254:0 7 | dmsetup load docker-8:4-1610614383-c0850e6fedcf9499dfeb01d9c0147c6bd5a0051ed44f0e65937cc191e8fdb5af
修改卷大小
resize2fs docker-8:4-1610614383-c0850e6fedcf9499dfeb01d9c0147c6bd5a0051ed44f0e65937cc191e8fdb5af
修改成功

 

顺便问一下有参加技能大赛的小伙伴要一起交流吗

你可能感兴趣的:(docker,docker的学习笔记)