当我查看docker详细信息时会看到如下警告:
WARNING: devicemapper: usage of loopback devices is strongly discouraged for production use. Use `--storage-opt dm.thinpooldev` to specify a custom block storage device.
问题原因:
centos系统docker默认使用存储驱动是devicemapper,而这种存储驱动有两种模式loop-lvm和direct-lvm,不巧默认又使用了比较低效的loop-lvm
解决方案一
使用direct-lvm,配置方式网上很多
解决方案二:
使用overlay文件系统
因为这个方案比较简单,配置步骤如下:
1.加载overlay模块
echo "overlay" > /etc/modules-load.d/overlay.conf
modprobe overlay lsmod | grep over reboot
2.删除docker配置信息
rm -rf /var/lib/docker
3.修改docker启动参数
vim /usr/lib/systemd/system/docker.service #ExecStart=/usr/bin/dockerd ExecStart=/usr/bin/dockerd --storage-driver=overlay2 -g /opt/docker
4.重启docker
systemctl daemon-reload
systemctl restart docker
5.检测
#docker info Containers: 0 Running: 0 Paused: 0 Stopped: 0 Images: 0 Server Version: 18.06.1-ce Storage Driver: overlay Backing Filesystem: xfs Supports d_type: true Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: bridge host macvlan null overlay Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog Swarm: inactive Runtimes: runc Default Runtime: runc Init Binary: docker-init containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e runc version: 69663f0bd4b60df09991c08812a60108003fa340 init version: fec3683 Security Options: seccomp Profile: default Kernel Version: 3.10.0-862.14.4.el7.x86_64 Operating System: CentOS Linux 7 (Core) OSType: linux Architecture: x86_64 CPUs: 24 Total Memory: 125.7GiB Name: centos7-hk122 ID: 3AG5:7RUW:OZZF:ZW7Q:FRMQ:AB3M:AQWX:YIJR:H63R:JI5R:DKGS:HDUM Docker Root Dir: /opt/docker Debug Mode (client): false Debug Mode (server): false Registry: https://index.docker.io/v1/ Labels: Experimental: false Insecure Registries: 127.0.0.0/8 Live Restore Enabled: false
不再弹出警告信息