卸载已安装docker
1 2 3 4 5 6 7 8 9 10
| yum remove docker-ce docker-ce-cli containerd.io yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
|
安装阿里yum源
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| # 进入/etc/yum.repos.d目录 cd /etc/yum.repos.d
# 备份/etc/yum.repos.d目录下所有的配置文件 mkdir bak mv CentOS-Linux-* bak
# 下载Centos8的镜像源 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo # 若CentOS未安装wget curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
# 清除所有yum缓存文件 yum -y clean all
# 建立缓存 yum -y makecache
# 查看yum仓库信息 yum repolist
|
安装需要的软件包
yum-utils提供了yum-config-manager,device-mapper存储驱动程序需要device-mapper-persistent-data和lvm2。
1 2 3
| yum install -y yum-utils \ device-mapper-persistent-data \ lvm2
|
设置docker的yum源,比如阿里云源
1 2 3
| yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
|
安装docker engine
1 2 3 4
| # 查看可安装版本 yum list docker-ce --showduplicates | sort -r
yum install docker-ce-19.03.15-3.el8 docker-ce-cli-19.03.15-3.el8 containerd.io
|
安装安装docker时,runc包产生版本冲突
按照上面的截图 得知我们安装container.io时,会下载一个podman的包(软件),podman包依赖runc包,runc包要>=1.0.0-57 ,然后不知道是他下载了版本为1.0.0-65的包还是这个包已经被安装了,就是container.io会和runc版本为1.0.0-65的包冲突。所以首先要把runc 包删除了,然后再重新安装container.io这样就不会出错。
设置Docker镜像加速器
k8s推荐docker的cgroup驱动使用systemd,说是会更稳定,所以这里我们还需要修改一下,同时这里更换docker的镜像源为中科大的镜像源。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| # 确保目录名称存在,不存在的就建一个 mkdir -p /etc/docker
# 修改或创建文件内容 vi /etc/docker/daemon.json
{ "exec-opts": ["native.cgroupdriver=systemd"], "log-driver": "json-file", "log-opts": { "max-size": "100m" }, "storage-driver": "overlay2", "storage-opts": [ "overlay2.override_kernel_check=true" ], "registry-mirrors": ["https://gdpuhcjk.mirror.aliyuncs.com"] }
mkdir -p /etc/systemd/system/docker.service.d ```
## 启动docker并设置开机启动
``` systemctl daemon-reload systemctl enable docker systemctl start docker
|