docker-ce 软件包需要 containerd.io >= 1.4.1,但无法安装任何提供程序

docker-ce 软件包需要 containerd.io >= 1.4.1,但无法安装任何提供程序

今天早上我在 Red Hat (Linux 4.18.0-240.1.1.el8_3.x86_64) 上更新/升级时遇到了这个问题,不知道该怎么办。听起来 yum 完全因此而卡住了。

$ sudo yum update
Updating Subscription Management repositories.
Last metadata expiration check: 2:40:27 ago on Wed 16 Dec 2020 07:53:10 AM CST.
Error: 
 Problem: package docker-ce-3:20.10.1-3.el7.x86_64 requires containerd.io >= 1.4.1, but none of the providers can be installed
  - cannot install the best update candidate for package docker-ce-3:19.03.14-3.el7.x86_64
  - package containerd.io-1.4.3-3.1.el7.x86_64 is filtered out by modular filtering
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

答案1

您正在尝试在 EL 8 上安装为 EL 7 构建的软件包。这行不通,而且不清楚您一开始是如何做到这一点的。正确的 Docker CE repo 文件获取适合您的 RHEL 版本的正确软件包版本,您应该使用它,而不是您曾经使用过的任何自定义 repo。

答案2

这对我有用:

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

进而:

sudo yum update

答案3

我可以在 CentOS8 上安装 sudo yum update -y sudo yum-config-manager
--add-repo
https://download.docker.com/linux/centos/docker-ce.repo

安装 Docker CE:sudo yum -y install docker-ce --allowerasing

答案4

到这里https://download.docker.com/linux/centos/7/x86_64/nightly/Packages/找到 dnf 包要求手动安装并运行 dnf 更新。它将毫无问题地运行。

相关内容