[Docker] 基于CENTOS7安装Docker环境
1 序言
1.1 环境准备
- CENTOS 7
# hostnamectl
# 或
# cat /etc/system-release
2 安装步骤
Step1.1 升级 YUM 仓库
使用 root 权限更新 yum 仓库
生产环境中此步操作需慎重,看自己情况,学习的话随便搞
yum -y update
延申
yum -y update
# 升级所有包同时也升级软件和系统内核
yum -y upgrade
# 只升级所有包,不升级软件和系统内核
Step1.2 卸载Docker旧版本
如果之前安装过的话
yum remove docker docker-common docker-selinux docker-engine
Step1.3 安装 Docker
Step1.3.1 安装需要的软件包
yum-util
提供yum-config-manager
功能,另两个是devicemapper
驱动依赖
yum install -y yum-utils device-mapper-persistent-data lvm2
Step1.3.2 设置 yum
源
yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo
# 中央仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 阿里仓库
Step1.3.3 选择docker版本并安装
- 查看可用版本有哪些
yum list docker-ce --showduplicates | sort -r
- 选择一个版本并安装
yum install docker-ce-版本号
# 默认安装的是最高版本 25.0.3-1.el7
yum -y install docker-ce-25.0.3-1.el7
## yum -y install docker-ce-18.06.3.ce-3.el7
## 注:版本号是 25.0.3-1.el7, 而非 3:25.0.3-1.el7
# 如下指令,可暂忽略:
# yum -y install docker-ce-cli:
# yum -y install containerd.io
出现下图说明安装成功
whereis docker
或者 输入
docker version
看到如下显示就安装成功了
docker version
Step1.3.4 启动 Docker 并设置开机自启
systemctl start docker
systemctl enable docker
systemctl status docker
Y FAQ
Q: 安装docker-ce
失败,报若干个依赖报的版本不匹配错误:错误:软件包:3:docker-ce-26.1.4-1.el7.x86_64 (docker-ce-stable) 需要:container-selinux >= 2:2.7 ...
问题描述
[root@vmw-e ~]# yum install -y docker-ce docker-ce-cli containerd.io
已加载插件:langpacks
正在解决依赖关系
--> 正在检查事务
---> 软件包 containerd.io.x86_64.0.1.6.33-3.1.el7 将被 安装
--> 正在处理依赖关系 container-selinux >= 2:2.74,它被软件包 containerd.io-1.6.33-3.1.el7.x86_64 需要
---> 软件包 docker-ce.x86_64.3.26.1.4-1.el7 将被 安装
--> 正在处理依赖关系 container-selinux >= 2:2.74,它被软件包 3:docker-ce-26.1.4-1.el7.x86_64 需要
--> 正在处理依赖关系 docker-ce-rootless-extras,它被软件包 3:docker-ce-26.1.4-1.el7.x86_64 需要
---> 软件包 docker-ce-cli.x86_64.1.26.1.4-1.el7 将被 安装
--> 正在处理依赖关系 docker-buildx-plugin,它被软件包 1:docker-ce-cli-26.1.4-1.el7.x86_64 需要
--> 正在处理依赖关系 docker-compose-plugin,它被软件包 1:docker-ce-cli-26.1.4-1.el7.x86_64 需要
--> 正在检查事务
---> 软件包 containerd.io.x86_64.0.1.6.33-3.1.el7 将被 安装
--> 正在处理依赖关系 container-selinux >= 2:2.74,它被软件包 containerd.io-1.6.33-3.1.el7.x86_64 需要
---> 软件包 docker-buildx-plugin.x86_64.0.0.14.1-1.el7 将被 安装
---> 软件包 docker-ce.x86_64.3.26.1.4-1.el7 将被 安装
--> 正在处理依赖关系 container-selinux >= 2:2.74,它被软件包 3:docker-ce-26.1.4-1.el7.x86_64 需要
---> 软件包 docker-ce-rootless-extras.x86_64.0.26.1.4-1.el7 将被 安装
--> 正在处理依赖关系 fuse-overlayfs >= 0.7,它被软件包 docker-ce-rootless-extras-26.1.4-1.el7.x86_64 需要
--> 正在处理依赖关系 slirp4netns >= 0.4,它被软件包 docker-ce-rootless-extras-26.1.4-1.el7.x86_64 需要
---> 软件包 docker-compose-plugin.x86_64.0.2.27.1-1.el7 将被 安装
--> 解决依赖关系完成
错误:软件包:3:docker-ce-26.1.4-1.el7.x86_64 (docker-ce-stable)
需要:container-selinux >= 2:2.74
错误:软件包:docker-ce-rootless-extras-26.1.4-1.el7.x86_64 (docker-ce-stable)
需要:slirp4netns >= 0.4
错误:软件包:docker-ce-rootless-extras-26.1.4-1.el7.x86_64 (docker-ce-stable)
需要:fuse-overlayfs >= 0.7
错误:软件包:containerd.io-1.6.33-3.1.el7.x86_64 (docker-ce-stable)
需要:container-selinux >= 2:2.74
您可以尝试添加 --skip-broken 选项来解决该问题
您可以尝试执行:rpm -Va --nofiles --nodigest
问题分析
- 尝试添加 --skip-broken 选项来解决该问题:亲测无效
[root@vmw-e ~]# yum install -y docker-ce --skip-broken
- 依赖包的版本冲突
解决方法
- step1 备份或移除
/etc/yum.repo.d/
目录下的源
mv /etc/yum.repos.d/repo_local.repo /etc/yum.repos.d/repo_local.repo.bak
mv ... (略)
- step2 添加新的源
# 阿里云的 Docker-CE 源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 阿里云的 Centos-7.repo 源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
ls -la /etc/yum.repos.d
- step3 再安装 docker-ce 即可
# yum -y install docker-ce-25.0.5-1.el7
参考文献
- 安装docker出现错误:需要:container-selinux >= 2:2.74 - CSDN 【推荐/亲测有效】
- docker安装错误:错误:软件包:docker-ce-rootless-extras-20.10.8-3.el7.x86_64 (docker-ce-stable)跳过(依赖问题) - CSDN 【亲测无效】
X 参考文献
本文作者:
千千寰宇
本文链接: https://www.cnblogs.com/johnnyzen
关于博文:评论和私信会在第一时间回复,或直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
日常交流:大数据与软件开发-QQ交流群: 774386015 【入群二维码】参见左下角。您的支持、鼓励是博主技术写作的重要动力!
本文链接: https://www.cnblogs.com/johnnyzen
关于博文:评论和私信会在第一时间回复,或直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
日常交流:大数据与软件开发-QQ交流群: 774386015 【入群二维码】参见左下角。您的支持、鼓励是博主技术写作的重要动力!