今天早上我在 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 更新。它将毫无问题地运行。