1.下载rpm包地址
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
2.下载需要的rpm 包
docker-ce-cli-19.03.8-3.el7.x86_64.rpm
docker-ce-19.03.8-3.el7.x86_64.rpm
containerd.io-1.2.6-3.3.el7.x86_64.rpm
3.安装Docker
rpm -Uvh *.rpm --nodeps --force
ps:启动的时候报错:error while loading shared libraries: libseccomp.so.2
解决办法:yum -y install libseccomp
docker安装之后默认的服务数据存放根路径为/var/lib/docker目录下,var目录默认使用的是根分区的磁盘空间;所以这是非常危险的事情;随着我们镜像、启动的容器实例开始增多的时候,磁盘所消耗的空间也会越来越大,所以我们必须要做数据迁移和修改docker服务的默认存储位置路径;有多种方式是可以修改docker默认存储目录路径的,但是最好是在docker安装完成后,第一时间便修改docker的默认存储位置路径为其他磁盘空间较大的目录(一般企业中为/data目录),规避迁移数据过程中所造成的风险。
方法1:
# 执行以下命令 mkdir -p /home/data/docker/lib mkdir -p /etc/systemd/system/docker.service.d/ echo -e "[Service] ExecStart= ExecStart=/usr/bin/dockerd --graph=/home/data/docker/lib/" > /etc/systemd/system/docker.service.d/devicemapper.conf systemctl daemon-reload systemctl start docker
方法2:
mkdir /home/data/docker/lib -p && mkdir /etc/docker/ && echo -e '{ "graph":"/home/data/docker/lib" }' > /etc/docker/daemon.json && systemctl daemon-reload && systemctl start docker && docker info | grep "Dir"
PS:
# docker安装后修改数据存放目录 # 停止运行docker docker stop 容器 && systemctl stop docker # rsync同步文件 rsync -avz /var/lib/docker/ /home/data/docker/lib/ # 启动docker systemctl daemon-reload && systemctl start docker