docker修改容器和镜像大小
docker修改容器和镜像大小
参考 https://blog.csdn.net/weixin_34279579/article/details/92170119
1 容器在运行一段时间的时候会突然无法写入数据,报错
docker no space left on device
2 加上某哥们搞了个镜像16G ,死活导入不了。
Google之,发现原来是Base Device Size的问题,其默认值是10G,而容器经过一段时间的运行写入文件量早已超过10G,就造成无法写入数据的问题了。
- dm.basesize 默认为10G,限制容器和镜像的大小
- dm.loopdatasize 存储池大小,默认为100G
- dm.loopmetadatasize 元数据大小,默认为2G
我的docker安装 docker(4):docker的安装(centos7)和加速
# docker info Client: Debug Mode: false Server: Containers: 164 Running: 88 Paused: 0 Stopped: 76 Images: 180 Server Version: 18.09.8 Storage Driver: devicemapper Pool Name: docker-253:1-838868736-pool Pool Blocksize: 65.54kB Base Device Size: 10.74GB Backing Filesystem: xfs Udev Sync Supported: true Data file: /dev/loop0 Metadata file: /dev/loop1 Data loop file: /var/lib/docker/devicemapper/devicemapper/data Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata Data Space Used: 31.58GB Data Space Total: 107.4GB Data Space Available: 66.25GB Metadata Space Used: 58.82MB Metadata Space Total: 2.147GB Metadata Space Available: 2.089GB Thin Pool Minimum Free Space: 10.74GB ...
- 调整docker服务端启动参数
# vim /usr/lib/systemd/system/docker.service [root@k8s-master ~]# grep "ExecStart=" /usr/lib/systemd/system/docker.service ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -s=devicemapper --storage-opt dm.basesize=60G --storage-opt dm.loopmetadatasize=20G
- 重启docker
systemctl daemon-reload
systemctl restart docker
- 查看调整
# ps -ef | grep docker|grep /usr/bin/dockerd|grep -v grep root 31409 1 4 12:14 ? 00:00:11 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -s=devicemapper --storage-opt dm.basesize=60G --storage-opt dm.loopmetadatasize=20G
# docker info
.... Storage Driver: devicemapper Pool Name: docker-253:1-503320265-pool Pool Blocksize: 65.54kB Base Device Size: 64.42GB Backing Filesystem: xfs Udev Sync Supported: true Data file: /dev/loop0 Metadata file: /dev/loop1 Data loop file: /var/lib/docker/devicemapper/devicemapper/data Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata Data Space Used: 2.064GB Data Space Total: 107.4GB Data Space Available: 29.91GB Metadata Space Used: 22.07MB Metadata Space Total: 17.05GB Metadata Space Available: 17.02GB Thin Pool Minimum Free Space: 10.74GB ....