0

CentOS 8 install Docker

Installing the CentOS 8 operating system itself was discussed earlier in this article.

Docker on CentOS 8: installation error

When trying to install Docker on Centos 8 from the official repository, I received the following error:

Error:
 Problem: package docker-ce-3:19.03.4-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.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
  - package containerd.io-1.2.6-3.2.el7.x86_64 is excluded
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

The error is caused by the containerd.io dependency, which cannot be automatically installed from the repository.

CentOS 8 install Docker

You can solve this problem by manually installing this package. We begin the installation of docker according to the instructions from the official website:

Install the necessary packages:

sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

Add docker repository:

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

Install docker with the –nobest flag (do not limit the transaction to the best candidate):

yum install --nobest docker-ce docker-ce-cli

Follow the link and select the latest version of containerd.io (at the time of writing, containerd.io-1.2.6-3.3.el7.x86_64.rpm) and install it:

dnf install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm

Now we can upgrade docker to the latest version:

dnf update docker-ce docker-ce-cli