I often face problems while installing and running docker on my Fedora machine. So I decided to note the process of installing and running docker for Fedora.

  • Step 1: Uninstall older version of docker.
$ sudo dnf remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine
  • Step 2: Install the latest version of Docker Engine and Containerd.
$ sudo dnf install docker-ce docker-ce-cli containerd.io
$ sudo grubby --update-kernel=ALL --args="systemd.unified_cgroup_hierarchy=0"
  • Step 4: Start Docker.
$ sudo systemctl start docker
  • Step 5: Verify that Docker Engine is installed correctly by running the hello-world image.
$ sudo docker run hello-world

If you face the below error then follow the next steps.

docker: Error response from daemon: cgroups: cgroup mountpoint does not exist: unknown.
ERRO[0000] error waiting for container: context canceled 

Fix:

$ sudo mkdir /sys/fs/cgroup/systemd
$ sudo mount -t cgroup -o none,name=systemd cgroup /sys/fs/cgroup/systemd