记得备份你的容器
此处就不多做介绍了
–storage-opts 参数
devicemapper文档:https://github.com/moby/moby/tree/master/daemon/graphdriver/devmapper
docker官方文档:https://docs.docker.com/engine/reference/commandline/dockerd/#options-per-storage-driver
修改docker的启动参数
停止docker,修改配置,重新加载配置
<code><span>sudo</span> systemctl stop docker
<span>sudo</span> vi /lib/systemd/system/docker.service</code>
找到 ExecStart=/usr/bin/dockerd
在这一行后面加上--storage-opt dm.loopdatasize=8G --storage-opt dm.loopmetadatasize=4G --storage-opt dm.basesize=8G
即可,意思是为,设置devicemapper的data为8G,metadata为4G,镜像的大小不能大于8G
记得还要抹去现有的空间,请确保你已经完成了第一步
<code>sudo rm -rf /var/lib/docker
sudo mkdir -p /var/lib/docker/devicemapper/devicemapper/
sudo dd <span>if</span>=<span>/dev/zero</span> of=<span>/var/lib</span><span>/docker/devicemapper</span><span>/devicemapper/data</span> bs=<span>1</span>M count=<span>0</span> seek=<span>8192</span>
sudo dd <span>if</span>=<span>/dev/zero</span> of=<span>/var/lib</span><span>/docker/devicemapper</span><span>/devicemapper/metadata</span> bs=<span>1</span>M count=<span>0</span> seek=<span>4096</span></code>
完成后运行
<code><span>sudo</span> systemctl daemon-reload
<span>sudo</span> systemctl start docker
docker info</code>
查看是否设置正确,貌似比预设的大了一点点。