centOs8 安装docker

Posted PHP是世界上最牛逼的语言

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centOs8 安装docker相关的知识,希望对你有一定的参考价值。

docker要求centOS7以上才能够支持!


查看系统信息:

[root@xx ~]uname -r4.18.0-240.22.1.el8_3.x86_64

系统内核4.18,可以安装最新版的docker!


查看系统环境


[root@xx ~]# cat /etc/os-releaseNAME="CentOS Linux"VERSION="8"ID="centos"ID_LIKE="rhel fedora"VERSION_ID="8"PLATFORM_ID="platform:el8"PRETTY_NAME="CentOS Linux 8"ANSI_COLOR="0;31"CPE_NAME="cpe:/o:centos:centos:8"HOME_URL="https://centos.org/"BUG_REPORT_URL="https://bugs.centos.org/"CENTOS_MANTISBT_PROJECT="CentOS-8"CENTOS_MANTISBT_PROJECT_VERSION="8"



CentOs 8!




1、移除旧docker


sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \

docker-engine

执行结果:

centOs8 安装docker

第一步,CentOS 7 和 CentOS 8没有什么区别!


2、安装yum-utils 提供了 yum-config-manager ,

并且 device mapper 存储驱动程序需要

device-mapper-persistent-datalvm2


sudo yum install -y yum-utils

执行结果:


centOs8 安装docker

解决方案:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.reposed -i 's/$releasever/8/g' /etc/yum.repos.d/CentOS-Base.repoyum clean allyum makecache


安装阿里云镜像:


官网提供国外的镜像(非常慢)

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


(推荐)使用阿里云镜像:


yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo


3、执行安装

sudo yum install docker-ce docker-ce-cli containerd.io

报错:

# sudo yum install docker-ce docker-ce-cli containerd.ioRepository AppStream is listed more than once in the configurationRepository extras is listed more than once in the configurationRepository PowerTools is listed more than once in the configurationRepository centosplus is listed more than once in the configuration上次元数据过期检查:0:00:27 前,执行于 20210628日 星期一 172026秒。错误: 问题 1: cannot install the best candidate for the job - nothing provides container-selinux >= 2:2.74 needed by docker-ce-3:20.10.7-3.el8.x86_64 问题 2: cannot install the best candidate for the job - nothing provides container-selinux >= 2:2.74 needed by containerd.io-1.4.6-3.1.el8.x86_64(尝试添加 '--skip-broken' 来跳过无法安装的软件包 或 '--nobest' 来不只使用最佳选择的软件包)

没有安装container-selinux或者container-selinux版本过低导致

解决方案:

yum install epel-releaseyum install container-selinux


如果container-selinux安装不了的话。


wget http://mirror.centos.org/centos/8/AppStream/x86_64/os/Packages/container-selinux-2.162.0-1.module_el8.4.0+830+8027e1c4.noarch.rpmrpm -ivh container-selinux-2.162.0-1.module_el8.4.0+830+8027e1c4.noarch.rpm

安装container-selinux-2.16需要安装很多其他模块,可以使用


dnf install XX 的方式安装


dnf找不到的话,就需要使用wget、rpm的方式。


错误: 问题: package docker-ce-3:20.10.7-3.el8.x86_64 requires docker-ce-rootless-extras, but none of the providers can be installed - cannot install the best candidate for the job - nothing provides slirp4netns >= 0.4 needed by docker-ce-rootless-extras-20.10.0-3.el8.x86_64 - nothing provides slirp4netns >= 0.4 needed by docker-ce-rootless-extras-20.10.1-3.el8.x86_64 - nothing provides slirp4netns >= 0.4 needed by docker-ce-rootless-extras-20.10.2-3.el8.x86_64 - nothing provides slirp4netns >= 0.4 needed by docker-ce-rootless-extras-20.10.3-3.el8.x86_64 - nothing provides slirp4netns >= 0.4 needed by docker-ce-rootless-extras-20.10.4-3.el8.x86_64 - nothing provides slirp4netns >= 0.4 needed by docker-ce-rootless-extras-20.10.5-3.el8.x86_64 - nothing provides slirp4netns >= 0.4 needed by docker-ce-rootless-extras-20.10.6-3.el8.x86_64 - nothing provides slirp4netns >= 0.4 needed by docker-ce-rootless-extras-20.10.7-3.el8.x86_64(尝试添加 '--skip-broken' 来跳过无法安装的软件包 或 '--nobest' 来不只使用最佳选择的软件包)

这个列表里缺少什么就安装什么!


比如上图需要安装:slirp4netns >= 0.4


wget http://mirror.centos.org/centos/8/AppStream/x86_64/os/Packages/slirp4netns-0.4.2-3.git21fdece.module_el8.4.0+522+66908d0c.x86_64.rpmrpm -ivh slirp4netns-0.4.2-3.git21fdece.module_el8.4.0+522+66908d0c.x86_64.rpm


更新yum索引,


centos7:

yum makecache fast


centos8:

yum makecache



4、执行安装,这个命令是安装最新版社区版(-ce)。


yum install docker-ce docker-ce-cli containerd.io
[root@xx ~]# yum install docker-ce docker-ce-cli containerd.ioRepository AppStream is listed more than once in the configurationRepository extras is listed more than once in the configurationRepository PowerTools is listed more than once in the configurationRepository centosplus is listed more than once in the configurationRepository epel is listed more than once in the configuration上次元数据过期检查:1:05:17 前,执行于 20210629日 星期二 091228秒。软件包 docker-ce-3:20.10.7-3.el8.x86_64 已安装。软件包 docker-ce-cli-1:20.10.7-3.el8.x86_64 已安装。软件包 containerd.io-1.4.6-3.1.el8.x86_64 已安装。依赖关系解决。无需任何处理。完毕!


如果想要选择版本的话,使用命令:

yum list docker-ce --showduplicates | sort -r
[root@xx ~]# yum list docker-ce --showduplicates | sort -rRepository AppStream is listed more than once in the configurationRepository extras is listed more than once in the configurationRepository PowerTools is listed more than once in the configurationRepository centosplus is listed more than once in the configurationRepository epel is listed more than once in the configurationdocker-ce.x86_64 3:20.10.7-3.el8 docker-ce-stabledocker-ce.x86_64 3:20.10.7-3.el8 @docker-ce-stabledocker-ce.x86_64 3:20.10.6-3.el8 docker-ce-stabledocker-ce.x86_64 3:20.10.5-3.el8 docker-ce-stabledocker-ce.x86_64 3:20.10.4-3.el8 docker-ce-stabledocker-ce.x86_64 3:20.10.3-3.el8 docker-ce-stabledocker-ce.x86_64 3:20.10.2-3.el8 docker-ce-stabledocker-ce.x86_64 3:20.10.1-3.el8 docker-ce-stabledocker-ce.x86_64 3:20.10.0-3.el8 docker-ce-stabledocker-ce.x86_64 3:19.03.15-3.el8 docker-ce-stabledocker-ce.x86_64 3:19.03.14-3.el8 docker-ce-stabledocker-ce.x86_64 3:19.03.13-3.el8 docker-ce-stable已安装的软件包上次元数据过期检查:1:34:53 前,执行于 20210629日 星期二 091228秒。

执行,指定VERSION_STRING

sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io


例如:3:20.10.7-3.el8

sudo yum install docker-ce-20.10.6-3.el8 docker-ce-cli-20.10.6-3.el8 containerd.io

注意:选的是“:”之后的信息!


5、启动docker


sudo systemctl start docker


6、查看docker是否安装成功


docker version

centOs8 安装docker


7、测试docker

docker run hello-world


查看镜像是否下载成功:

docker images


镜像成功!


以上是关于centOs8 安装docker的主要内容,如果未能解决你的问题,请参考以下文章

centos8 安装原生docker

Centos8下安装docker

CentOS8快速安装Docker

CentOS8快速安装Docker

CentOS8.1安装docker

Centos8 安装docker