默认情况下,Centos下docker使用的为loop模式存储,这个模式只能在测试环境中使用。

警告信息如下:

WARNING: Usage of loopback devices is strongly discouraged for production use. Either use `--storage-opt dm.thinpooldev` or use `--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.


  1. 添加用于docker存储的硬盘

  2. 创建PV

     [root@registry docker]# pvcreate /dev/sdb

  3. 创建VG 

    [root@registry docker]# vgcreate datavg /dev/sdb

  4. 创建LV 

    [root@registry docker]# lvcreate -L 90G -n data datavg 

    [root@registry docker]# lvcreate -L 5G -n metadata datavg

  5. 修改docker启动参数 

    [root@registry ~]# more /lib/systemd/system/docker.service

    ExecStart=/usr/bin/docker daemon -g=/docker --insecure-registry repo.fctty.com -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375 --label label_name=fcrepo --iptables=false --storage-driver=devicemapper --storage-opt dm.datadev=/dev/datavg/data --storage-opt dm.metadatadev=/dev/datavg/metadata

  6. 启动docker 

    [root@registry ~]# systemctl daemon-reload

    [root@registry ~]# systemctl start docker

  7. 查看更改后的存储 

    [root@registry ~]# docker info

    Server Version: 1.11.1

    Storage Driver: devicemapper

     Pool Name: docker-253:0-381715-pool

     Pool Blocksize: 65.54 kB

     Base Device Size: 10.74 GB

     Backing Filesystem: xfs

     Data file: /dev/datavg/data

     Metadata file: /dev/datavg/metadata

     Data Space Used: 14.09 MB

     Data Space Total: 96.64 GB

     Data Space Available: 96.62 GB


至此,docker已成功使用LVM磁盘卷了,不再担心存储爆了。

官方文档参考:https://docs.docker.com/engine/userguide/storagedriver/device-mapper-driver/