一、环境版本
描述 | 版本 |
---|---|
Linux系统 | RHEL7.3 |
注:因为安装过程中需要安装必要的依赖,所以请提前配置好基本环境!
参考博客:https://blog.youkuaiyun.com/weixin_43522793/article/details/114383522
官网文档:https://docs.docker.com/engine/install/centos/
二、安装过程
2.1 配置Docker仓库
[root@MyDB1 ~]# yum install -y yum-utils
[root@MyDB1 ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
2.2 切换yum源
[root@MyDB1 ~]# cd /etc/yum.repos.d/
[root@MyDB1 yum.repos.d]# mv my.repo my.repo_bck
[root@MyDB1 yum.repos.d]# mv redhat.repo redhat.repo_bck
[root@MyDB1 yum.repos.d]# ll
注释:以“repo”结尾的配置文件是正在使用的源;以“bck”结尾的配置文件是备份的源;
[root@MyDB1 yum.repos.d]# yum clean all
[root@MyDB1 yum.repos.d]# yum list all
2.3 报错-源地址404
-
问题复现:在建立yum缓存时,或yum安装依赖时,发现当前yum源的地址404;
-
原因分析:①当前url已无效 ②url地址和实际地址不符
-
真实原因:地址中“$releasever”变量读取后对应的值是“7Server”;与真实url不符
-
解决方案:既然执行中无法获取正确的变量值,那我们手动改一下即可!配置文件中此变量全部替换!替换后如下:
-
再次清空和建立缓存
[root@MyDB1 yum.repos.d]# yum clean all
[root@MyDB1 yum.repos.d]# yum list all
2.4 安装Docker
[root@MyDB1 yum.repos.d]# yum install docker-ce docker-ce-cli containerd.io
2.5 报错-缺少必要依赖
- 原因分析:
1、如上错误,提示我们需要安装如图的依赖且版本大于等于提示给出的!
2、yum安装软件,正常情况是会帮我们自动解决依赖问题
3、在上面基础上还是报错了,原因只有一个:该官方提供的yum源没有上述依赖
- 解决方案:
1、参考2.2——切换yum源
2、参考博客:https://blog.youkuaiyun.com/weixin_43522793/article/details/114383522
- 实施方案:
[root@MyDB1 yum.repos.d]# mv docker-ce.repo docker-ce.repo_bck
[root@MyDB1 yum.repos.d]# mv my.repo_bck my.repo
[root@MyDB1 yum.repos.d]# yum clean all
[root@MyDB1 yum.repos.d]# yum list all
注意:切换中可能会自动生成系统的配置文件(redhat.repo),可以备份或删除
- 安装依赖:
[root@MyDB1 yum.repos.d]# yum -y install container-selinux
[root@MyDB1 yum.repos.d]# yum -y install slirp4netns
[root@MyDB1 yum.repos.d]# yum -y install fuse-overlayfs
2.6 继续安装
说明:切换回官网提供的yum源,再次执行2.4;下面不再赘述,直接执行!
[root@MyDB1 yum.repos.d]# mv my.repo my.repo_bck
[root@MyDB1 yum.repos.d]# mv docker-ce.repo_bck docker-ce.repo
[root@MyDB1 yum.repos.d]# yum clean all
[root@MyDB1 yum.repos.d]# yum list all
[root@MyDB1 yum.repos.d]# yum install docker-ce docker-ce-cli containerd.io
注释:安装过程,多次提示是否下载或是否安装,输入“y”回车即可!
安装成功!
2.7 启动Docker
[root@MyDB1 yum.repos.d]# systemctl start docker
[root@MyDB1 yum.repos.d]# systemctl status docker
- 若启动过程报如下错误,是selinux没有关闭导致,关闭后再次启动Docker服务即可!
setroubleshoot[46390]: SELinux is preventing systemd from mac_admin access on the capability2 Unknown. For complete SELinux me
sestatus #查看服务运行状态
setenforce 0 #临时关闭
/etc/selinux/config ==> SELINUX=disabled #永久关闭(修改配置文件对应配置项,修改后重启系统)
2.8 验证服务
[root@MyDB1 yum.repos.d]# docker --version
Docker version 20.10.5, build 55c4c88
[root@MyDB1 yum.repos.d]# docker --help
注:若执行上述命令后没有报错,即安装成功!