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,就造成無法寫入數據的問題了。

  1. dm.basesize 默認為10G,限制容器和鏡像的大小
  2. dm.loopdatasize 存儲池大小,默認為100G
  3. 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 ....

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM