动态增加docker系统空间
docker缺省是10G,可以动态增加docker空间,但是要查一下1.docker所在宿主机分区的格式必须是ext2、ext3、ext4;
2.docke版本:
# docker info
Containers: 23
Images: 54
Storage Driver: devicemapper
Pool Name: docker-253:0-1966841-pool
Pool Blocksize: 65.54 kB
Backing Filesystem: extfs
Data file: /dev/loop0
Metadata file: /dev/loop1
Data Space Used: 3.287 GB
Data Space Total: 107.4 GB
Data Space Available: 77.71 GB
Metadata Space Used: 5.014 MB
Metadata Space Total: 2.147 GB
Metadata Space Available: 2.142 GB
Udev Sync Supported: true
Deferred Removal Enabled: false
Data loop file: /var/lib/docker/devicemapper/devicemapper/data
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
Library Version: 1.02.95-RHEL6 (2015-09-08)
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 2.6.32-573.7.1.el6.x86_64
Operating System: <unknown>
CPUs: 2
Total Memory: 3.744 GiB
Name: redhat6test1
ID: Z3PB:DAZJ:ZTYU:TRYE:LXR3:4KXS:7HMI:2BK6:B4JW:I7XA:ADNJ:NUTL
满足条件后,可以使用动态脚本:
#This script is dynamic modify docker container disk
#Author Deng Lei
if [ -z $1 ] || [ -z $2 ]; then
echo "Usage: container_name increase_capacity"
echo "Example: I want increase 11G to centos-sshd-test2"
echo "The command is:sh `basename $0` centos-sshd-test211"
exit 1
fi
if [ `docker inspect $1 &>>/dev/null &&echo 0 || echo 1` -eq 1 ];then
echo "The container $1 is no exist!"
exit 1
fi
container_id=`docker inspect -f '{{ .Id }}' $1`
now_disk=`dmsetup table /dev/mapper/docker-*-$container_id|awk '{print $2}'`
disk=$(($2*1024*1024*1024/512))
if [ $disk -lt $now_disk ];then
echo "I can't shink container $1 from $(($now_disk*512/1024/1024/1024))G to ${2}G!I only modify contanier increase disk!"
exit 1
fi
dmsetup table /dev/mapper/docker-*-$container_id|sed "s/0 * thin/0 $disk thin/"|dmsetup load /dev/mapper/docker-*-$container_id
dmsetup resume /dev/mapper/docker-*-$container_id
resize2fs /dev/mapper/docker-*-$container_id
if [ $? -eq 0 ];then
echo "dynamic container $1 disk to ${2}G is success!"
else
echo "dynamic container $1 disk to ${2}G is fail!"
fi
#./modify_disk_dynamic.sh centos-sshd-test2 50 给centos-sshd-test2增加50G空间
页:
[1]