解决CentOS8安装Docker-ce报错,yum安装指定的rpm文件

按照官方的步骤尝试在CentOS8里面安装Docker-ce(https://docs.docker.com/install/linux/docker-ce/centos/),会报下面的错误:

错误:
 问题: package docker-ce-3:19.03.8-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.10-3.2.el7.x86_64 is excluded
  - package containerd.io-1.2.13-3.1.el7.x86_64 is excluded
  - 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
(尝试添加 '--skip-broken' 来跳过无法安装的软件包 或 '--nobest' 来不只使用最佳选择的软件包)

这是由于通过yum安装的containerd.io版本过低,这个时候你需要安装指定版本的containerd.io来解决这个问题,但是通过yum直接安装,又无法安装更高版本的containerd.io,只能先把高版本的下载下来,再进行安装。下载地址:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/,下载下来之后,通过下面的命令安装:

yum install /home/containerd.io-1.2.12-3.1.el7.x86_64.rpm

我把rpm文件放到了home目录下,所以这个命令是这样的。

安装了高版本的containerd.io之后,就可以正常安装最新版本的docker-ce了。

如果还报错,就把三个文件docker-ce,docker-ce-cli,containerd.io都手动下载下来,然后通过yum手动安装。

另外我在安装中还遇到一个事务检查错误的问题:

方法是把冲突的包删除掉。比如我这边提示的冲突是:

file /usr/share/man/man1/docker-attach.1.gz 
from install of docker-ce-cli-1:19.03.8-3.el7.x86_64 
conflicts with file from package 
podman-manpages-1.4.2-5.module_el8.1.0+237+63e26edc.noarch

执行命令:

rpm -e podman-manpages-1.4.2-5.module_el8.1.0+237+63e26edc.noarch

删除成功后,再安装就可以了。如果提示被其他的包需要,则先把依赖它的包删除掉。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值