RHEL7上安装docker-ce及修改默认存储路径、devicemapper大小
1、安装docker-ce
首先删除较旧版本的docker(如果有):
yum remove docker docker-common docker-selinux docker-engine-selinux docker-engine docker-ce
下一步安装需要的软件包:
yum install -y yum-utils device-mapper-persistent-data lvm2
配置docker-ce repo:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
最后安装docker-ce:
yum install docker-ce
注:安装完成后,Server Version: 18.06.0-ce
2、修改默认存储位置
docker安装完成后,默认是存储在/var/lib/docker下的,我们把这个目录,拷贝到/data下,然后建立软连接
# systemctl stop docker.service
# cd /var/lib
# cp -r /var/lib/docker /data/
# ln -s /data/docker docker
# systemctl start docker.service
在查看默认目录存储,已经在/data/docker下了
3、修改devicemapper默认大小
devicemapper是RHEL下Docker Engine的默认存储驱动,它有两种配置模式:loop-lvm和direct-lvm
docker 启动一个容器后默认根分区大小为10GB
# docker info |grep Base
Base Device Size: 10.74GB
现在要修改默认大小为50G(其中30G也行,本次为测试)
修改方法:
编辑/lib/systemd/system/docker.service
在ExecStart=/usr/bin/dockerd 后,加入如下参数
--storage-opt dm.basesize=50G --storage-opt dm.loopdatasize=1024G --storage-opt dm.loopmetadatasize=10G --storage-opt dm.fs=xfs
dm.basesize 默认为10G,限制容器和镜像的大小
dm.loopdatasize 存储池大小,默认为100G
dm.loopmetadatasize 元数据大小,默认为2G
dm.datadev 存储池设备,默认生成一个/var/lib/docker/devicemapper/devicemapper/data文件
dm.metadatadev 元数据设备,默认生成一个/var/lib/docker/devicemapper/devicemapper/metadata文件
dm.fs 文件系统
注:生产环境调整,注意备份数据
修改完成后,启动docker,然后查看
到此,修改完成。
docker官方建议,生产环境上不要使用loop-lvm,而应该使用direct-lvm,有关他们的对比可以参加redhat的说明。
https://developers.redhat.com/blog/2014/09/30/overview-storage-scalability-docker/
评论(1)