yum多个源repo安装指定版本docker
yum源设置了多个源本地和网络的。本地的版本旧些,网络的版本新。
一、查看有几个源,保证你的源repo文件里enable=1开启状态。
[root@CentOs7 ~]# yum repolist all
二、查看所有的版本列表。
[root@CentOs7 yum.repos.d]# yum list docker* --showduplicates |sort -r
注意docker后*是通配符,就是包含docker和docker-ce的版本都列出,如果不加*就只列出docker的版本。因为docker在2017年03月后,版本数字和文件名都变化了。所以要使用通配符才能全搜索到。 点击 查看Docker的版本 介绍
三、通过其完整的软件包名称安装特定版本。
该软件包名称是软件包名称(docker-ce)加上版本字符串(第二列),从第一个冒号(:)一直到第一个连字符,并用连字符(-)分隔。
例如:docker-ce-19.03.4-3.el7.x86_64.rpm 这个包
[root@CentOs7 ~]# yum install docker-ce-19.03.4
注意,如果安装版本低和相关依赖不匹配则也不会安装。会提示错误:
错误:软件包:docker-ce-17.03.0.ce-1.el7.centos.x86_64 (docker-ce-stable-163) 需要:docker-ce-selinux >= 17.03.0.ce-1.el7.centos 可用: docker-ce-selinux-17.03.0.ce-1.el7.centos.noarch (docker-ce-stable-163) docker-ce-selinux = 17.03.0.ce-1.el7.centos 可用: docker-ce-selinux-17.03.1.ce-1.el7.centos.noarch (docker-ce-stable-163) docker-ce-selinux = 17.03.1.ce-1.el7.centos 可用: docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch (docker-ce-stable-163) docker-ce-selinux = 17.03.2.ce-1.el7.centos 可用: docker-ce-selinux-17.03.3.ce-1.el7.noarch (docker-ce-stable-163) docker-ce-selinux = 17.03.3.ce-1.el7 您可以尝试添加 --skip-broken 选项来解决该问题 您可以尝试执行:rpm -Va --nofiles --nodigest
参考链接:
http://runoob.com/docker/centos-docker-install.html
http://zhuanlan.zhihu.com/p/305572519?utm_source=wechat_session