<七> CentOS 8 安装最新版本Docker

一、安装Docker前,请先保证linux机器上已安装yum源,yum源的配置见

CentOS 8 配置YUM源超详细教程(本地源+网络源)-CSDN博客

或者

CentOS 8 配置YUM源超详细教程(本地源+网络源)_centos8配置yum源-CSDN博客

二、安装Docker

1、卸载老版本

复制代码
yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

2、安装依赖包

在安装 Docker 之前,先安装 yum-utils,这个工具可以帮助我们更好地管理软件包:

复制代码
sudo yum install -y yum-utils

3、添加 Docker 仓库

接下来,我们需要添加 Docker 的官方仓库,以便能够下载最新版本的 Docker:

复制代码
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

4、安装 Docker

现在可以安装 Docker 了。运行以下命令进行安装:

复制代码
sudo yum install docker-ce docker-ce-cli containerd.io -y

注意:安装过程中可能出现以下错误:

①podman-manpages包冲突问题

在执行安装docker命令,出现包冲突`js

podman-manpages-1.4.2-5.module_el8.1.0+237+63e26edc.noarch

卸载 podman-manpages

复制代码
yum list podman-manpages  #查看 podman-manpages
yum remove podman-manpages.noarch  #卸载podman-manpages.noarch
#再次重新安装docker
sudo yum install docker-ce docker-ce-cli containerd.io

②runc包冲突问题

✅ 问题总结

1、buildah 需要 runc >= 1.0.0-26,但系统中没有合适的版本。

2、containerd.io 与当前系统中已安装的 runc 版本冲突。

3、某些 runc 版本被模块过滤器(module filter)过滤掉,无法安装

解决方案:

1、如果已有 runc 安装并导致冲突,可以尝试卸载:

复制代码
sudo dnf remove runc

2、然后再尝试安装 Docker:

复制代码
sudo dnf install docker-ce docker-ce-cli containerd.io

③无法从 Docker 官方源下载 containerd.io RPM 包,提示 SSL 连接异常(SSL_ERROR_SYSCALL),这通常与网络、SSL/TLS 配置或源地址失效有关。

🔍 问题分析

1、SSL/TLS 连接失败:可能是网络代理、防火墙、系统时间错误或 OpenSSL 版本过低导致。

2、源地址失效或不可达:Docker 官方仓库可能无法访问,尤其是在中国大陆地区。

3、CentOS 8 已停止维护:Docker 官方可能已不再为 CentOS 8 提供稳定的镜像源支持。

解决方案:

1、添加阿里云的docker源

复制代码
sudo dnf install -y yum-utils
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

2、安装docker

复制代码
sudo dnf install -y docker-ce docker-ce-cli containerd.io

至此,docker安装成功!

三、启动和测试docker

1、启动docker服务

复制代码
sudo systemctl start docker

2、验证docker是否安装成功

复制代码
sudo systemctl status docker

如果一切正常,您应该会看到 Docker 服务的状态为 active (running)

四、设置Docker自启动

1、为了让 Docker 在系统启动时自动启动,可以使用以下命令:

复制代码
sudo systemctl enable docker

2、您可以运行以下命令来确认 Docker 服务已设置为自动启动:

复制代码
sudo systemctl is-enabled docker

五、常用 Docker 命令

以下是一些常用的 Docker 命令,可以帮助您快速上手:

命令 描述
sudo docker ps 列出当前运行的容器
sudo docker images 列出本地存储的所有镜像
sudo docker run image 使用指定镜像创建并运行一个新容器
sudo docker stop container 停止运行中的容器
sudo docker rm container 删除一个容器
sudo docker rmi image 删除一个镜像
sudo docker exec -it container /bin/bash 进入运行中的容器并打开 bash shell

六、卸载 Docker

如果您需要完全卸载 Docker,可以使用以下命令:

复制代码
sudo yum remove docker-ce docker-ce-cli containerd.io -y
sudo rm -rf /var/lib/docker

总结

通过以上步骤,您已经成功在 CentOS 上安装了 Docker,并配置了它在系统启动时自动启动。Docker 的强大功能使得应用的部署与管理变得更加高效与灵活。无论是开发环境还是生产环境,Docker 都能提供极大的便利。

相关推荐
To_OC16 小时前
跑了3个Docker容器后,我终于搞懂镜像和容器到底啥关系
后端·docker·容器
JoyCong199819 小时前
ToDesk个人版、专业版、游戏版、设计版、性能版、团队版权益介绍
大数据·运维·游戏·远程工作·远程操作
tryCbest20 小时前
Docker 从零到精通:知识与跨平台使用指南
docker·容器
Elastic 中国社区官方博客20 小时前
ES95:面向 Elasticsearch 时间序列指标的自适应压缩
大数据·运维·elasticsearch·搜索引擎·架构·全文检索
mqiqe21 小时前
AgentScope Java 2.0 Agent 状态存储(AgentStateStore)深度解析:构建可恢复、可扩展的智能体运行时
java·运维·网络
mennekes21 小时前
数据中心安全配电设备如何选择?
运维·人工智能·科技·安全·制造
开始学AI1 天前
Codex2API Docker 使用宿主机代理:OAuth Token 兑换 403 问题排查与解决方案
运维·docker·容器
晨枫阳1 天前
@changesets/cli是什么?哪些情况下需要使用?怎么使用
linux·运维·ubuntu
做前端的娜娜子1 天前
Docker 常用命令全梳理:从镜像拉取到容器编排
docker·容器·掘金·金石计划
天远Date Lab1 天前
零信任架构实战:基于天远行驶证核查构建自动化车队准入网关
运维·人工智能·架构·自动化