CentOS 8停止维护后,如何安装Docker容器引擎?

在 CentOS 8 上安装 Docker

尽管 CentOS 8 官方仓库已不再更新,但我们仍然可以通过配置 Docker 官方仓库来完成安装,以下是在一个已停止更新的 CentOS 8 系统上安装 Docker Engine 的典型步骤。

CentOS 8停止维护后,如何安装Docker容器引擎?

为了确保安装过程的顺利,建议卸载系统中可能存在的旧版本 Docker。

sudo dnf remove docker 
                  docker-client 
                  docker-client-latest 
                  docker-common 
                  docker-latest 
                  docker-latest-logrotate 
                  docker-logrotate 
                  docker-engine

安装 dnf-plugins-core 包,它提供了管理 DNF 仓库所需的命令。

sudo dnf install -y dnf-plugins-core

添加 Docker 官方的稳定版仓库。

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

由于 CentOS 8 的源已失效,直接安装可能会遇到依赖问题,一个可行的解决方案是修改仓库配置,指向 vault.centos.org,但更推荐的做法是迁移到其下游发行版,如 AlmaLinux 或 Rocky Linux,假设您已解决源的问题,接下来便可安装 Docker Engine。

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

安装完成后,启动 Docker 服务并设置其开机自启。

sudo systemctl start docker
sudo systemctl enable docker

通过运行 hello-world 镜像来验证 Docker 是否安装成功。

CentOS 8停止维护后,如何安装Docker容器引擎?

sudo docker run hello-world

如果看到欢迎信息,则说明 Docker 已在您的 CentOS 8 系统上正确安装并运行。


Docker 基础管理操作

安装只是第一步,熟练掌握 Docker 的日常管理命令才是高效使用的关键。

服务管理

Docker 的服务可以通过 systemctl 命令轻松控制,这与管理其他系统服务的方式完全一致。

  • sudo systemctl status docker:查看 Docker 服务运行状态。
  • sudo systemctl stop docker:停止 Docker 服务。
  • sudo systemctl restart docker:重启 Docker 服务。

镜像与容器管理

镜像是容器的基础,而容器是镜像的运行实例,以下是一些核心的管理命令,可以通过表格形式更清晰地展示。

常用 Docker 镜像命令

命令 功能描述
docker pull [镜像名] 从 Docker Hub 拉取指定的镜像
docker images 列出本地所有已下载的镜像
docker rmi [镜像ID/名] 删除一个或多个本地镜像
docker search [关键词] 在 Docker Hub 中搜索镜像

常用 Docker 容器命令

CentOS 8停止维护后,如何安装Docker容器引擎?

命令 功能描述
docker run [选项] [镜像名] [命令] 创建并启动一个新的容器
docker ps 列出当前正在运行的容器(加 -a 显示所有)
docker stop [容器ID/名] 停止一个或多个正在运行的容器
docker rm [容器ID/名] 删除一个或多个已停止的容器

重要考量:CentOS 8 的现状与替代方案

如前所述,CentOS 8 的生命周期结束是使用时最大的障碍,官方源不可用会导致 dnf 命令失败,除了手动修改配置指向 vault.centos.org 这一临时方案外,更长远和稳定的选择包括:

  1. 迁移到兼容发行版:将系统升级到 AlmaLinux 8 或 Rocky Linux 8,这两个发行版与 CentOS 8 100% 兼容,并提供了长期的支持,可以无缝接替 CentOS 8 的工作。
  2. 使用 Podman:Podman 是 RHEL 8 及其衍生版(包括 CentOS 8)中默认的容器管理工具,它与 Docker 的命令行接口高度兼容,但采用无守护进程的架构,安全性更高,且无需 root 权限即可运行容器,对于新项目,Podman 是一个非常值得考虑的现代化替代品。

相关问答FAQs

Q1: 为什么我在 CentOS 8 上执行 dnf install 命令时会报告仓库连接失败的错误?

A1: 这是因为 CentOS 8 已于 2021 年 12 月 31 日正式停止维护(End-of-Life, EOL),其官方软件仓库已被移除或归档,系统默认的 dnf 配置仍然指向已失效的 URL,要解决这个问题,您需要修改 /etc/yum.repos.d/ 目录下的 .repo 文件,将其中的 mirrorlist 注释掉,并启用 baseurl,将其指向 vault.centos.org,但这只是一个临时方案,更推荐的做法是迁移到仍在积极维护的兼容系统,如 AlmaLinux 或 Rocky Linux。

Q2: 在 CentOS 8/RHEL 8 系统上,Docker 和 Podman 有什么主要区别?我应该选择哪一个?

A2: 主要区别在于架构和安全性,Docker 采用客户端/服务器架构,依赖一个持续运行的 root 权限守护进程,而 Podman 是无守护进程的,它直接与容器运行时(如 containerd)交互,每个容器都可以作为一个独立的进程运行,这使得 Podman 在安全性上更有优势,特别是它原生支持在非 root 用户下运行容器,在命令行上,Podman 与 Docker 高度兼容,许多 Docker 命令可以直接在 Podman 中使用,如果您在 CentOS 8 或 RHEL 8 上开启新项目,或者对安全性有更高要求,Podman 是官方推荐且更现代的选择,如果您有大量基于 Docker 的工作流和脚本,Docker 仍然是一个成熟且强大的工具。

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2025-10-02 01:10
下一篇 2024-07-27 16:55

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

QQ-14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信