记一次服务器端 Docker 的安装
最近在自己服务器上准备搭建一个 Outline 服务 ,在使用命令安装 Docker 发现了错误。因此,在此简单记录一下过程,并分享解决方法。

安装 docker 报错:
package docker-ce-3:19.03.2-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed。
- cannot install the best candidate for the job
- package containerd.io-1.2.2-3.3.el7.x86_64 is excluded
- package containerd.io-1.2.2-3.el7.x86_64 is excluded
- package containerd.io-1.2.4-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.5-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.6-3.3.el7.x86_64 is excluded (try to add ‘–skip-broken’ to skip uninstallable packages or ‘–nobest’ to use not only best candidate packages)
解决问题:containerd.io 版本太低
使用的服务器: 操作系统是 CentOS 8 , 服务器网络是 IPV4 类型的。
开始:
1.在 CentOS 8 命令行下,直接使用 yum -y install docker-ce 命令,发现竟然报错。
直接安装 报错 (网图)
备注: 看上面的内容,说的是containerd.io >= 1.2.2-3 ,意思就是 containerd.io 的版本必须大于等于 1.2.2-3 。
2.经过查看资料,发现有大佬解说为:缺少关于 docker 的库,需要安装相关的 docker 依赖库。
方法:
1、要么就降低docker 的版本
2、如果不想降低docker 版本,那么就更新 containerd.io 的版本。
这里小微采用的是第二种。
1.安装依赖包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2.装载 相关yum源。
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
3.安装 相关包
sudo yum install docker-ce docker-ce-cli containerd.io
如果报错:Problem: package docker-ce-3:19.03.4-3.el7.x86_64 requires containerd.io >= 1.2.2-3 那就先装新版的 containerd.io

安装新版的 containerd.io :
dnf install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
4.安装其他的 docker 包
sudo yum install docker-ce docker-ce-cli
sudo systemctl start docker
5.一切顺利的话,安装到这里就成功了。下面查看一下 docker 版本信息:
docker --version //docker版本
sudo systemctl enable docker //开机自启

结束。
