CentOS Docker 安装
关键要点
- 研究表明,安装 Docker 到 CentOS 的过程包括卸载旧版本、安装依赖、设置仓库、安装 Docker 包、启动服务并验证,适合 CentOS 7 和更高版本。
- 对于 CentOS 7,用户需关闭防火墙以避免冲突;CentOS 9 及以上版本的步骤略有不同。
- 中国用户建议使用镜像源(如阿里云、清华大学)加速下载,具体步骤视版本而定。
安装步骤概述
以下是针对 CentOS 7 的简要安装指南,适合初学者。如果使用 CentOS 9 或更高版本,请参考附录部分。
准备工作
- 确保系统为 64 位 CentOS 7,内核版本不低于 3.10。
- 建议使用 root 用户或
sudo
执行命令。
安装步骤
- 卸载旧版本(可选):
- 如果已安装旧版 Docker,运行:
bash sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
- 安装依赖:
- 运行以下命令安装必要工具:
bash sudo yum install -y yum-utils device-mapper-persistent-data lvm2 --skip-broken
- 设置 Docker 仓库:
- 添加阿里云镜像源(推荐):
bash sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo sudo yum makecache fast
- 安装 Docker CE:
- 安装 Docker 及其组件:
bash sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- 启动 Docker:
- 关闭防火墙(CentOS 7 需注意):
bash sudo systemctl stop firewalld sudo systemctl disable firewalld
- 启动并启用 Docker:
bash sudo systemctl start docker sudo systemctl enable docker
- 验证安装:
- 运行测试容器:
bash sudo docker run hello-world
- 如果输出 “Hello from Docker!”,则安装成功。
镜像加速(可选)
- 为加速镜像下载,可配置阿里云加速器:
- 编辑配置文件:
bash sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://registry.docker-cn.com"] } EOF
- 重启 Docker:
bash sudo systemctl restart docker
安装 Docker Compose(可选)
- 下载并安装 Docker Compose:
- 运行:
bash curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose
附录:CentOS 9 及以上版本
如果使用 CentOS 9 或更高版本,步骤如下:
- 确保 centos-extras 仓库启用。
- 卸载旧版本:
sudo dnf remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
- 设置仓库(可使用清华大学镜像):
sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
- 安装 Docker:
sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- 启动并验证:
sudo systemctl start docker
sudo systemctl enable --now docker
sudo docker run hello-world
调查笔记
本文基于 2025 年 7 月 21 日的最新信息,综合多个可靠来源(如菜鸟教程、阿里云开发者社区、CSDN 博客及官方 Docker 文档),提供 CentOS 系统上安装 Docker 的详细中文讲解。以下是全面分析和步骤分解,旨在为用户提供专业、实用的指导。
背景与需求分析
Docker 是一种广泛使用的容器化平台,支持多种 Linux 发行版,包括 CentOS。用户需求为在 CentOS 上安装 Docker,并希望获取中文讲解。考虑到 CentOS 的版本多样性(如 CentOS 7 和 CentOS 9 Stream)以及地域因素(如中国用户可能需要镜像源加速),本文涵盖了通用步骤和优化建议。
安装步骤详解
以下是基于调查的详细安装流程,分为多个阶段,确保用户能顺利完成安装。
1. 系统准备
首先,确保系统为 64 位 CentOS,内核版本不低于 3.10。调查显示,CentOS 7 是最常见的版本,内核通常满足要求;CentOS 9 Stream 及以上版本也支持 Docker,但安装工具可能从 yum
切换为 dnf
。
2. CentOS 7 安装步骤
以下是针对 CentOS 7 的详细步骤,基于阿里云开发者社区和 CSDN 博客的内容:
- 卸载旧版本:
- 调查显示,若系统中存在旧版 Docker(如 docker-engine),需先卸载以避免冲突。命令为:
bash sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine \ docker-ce
- 此步骤可选,若无旧版本可跳过。
- 安装依赖:
- Docker 需要
yum-utils
、device-mapper-persistent-data
和lvm2
。安装命令为:bash sudo yum install -y yum-utils device-mapper-persistent-data lvm2 --skip-broken
- 调查中,
--skip-broken
参数可避免依赖冲突。 - 设置 Docker 仓库:
- 官方仓库可能访问较慢,调查推荐使用中国镜像源。阿里云镜像源设置命令为:
bash sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo sudo yum makecache fast
- 清华大学镜像站也提供支持,命令为:
sed -i 's+https://download.docker.com+https://mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
- 安装 Docker CE:
- 安装 Docker Community Edition 及其组件:
bash sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- 调查显示,
docker-ce
是核心引擎,docker-ce-cli
提供命令行接口,containerd.io
是运行时依赖。 - 启动 Docker:
- 调查中,CentOS 7 默认使用
firewalld
,可能与 Docker 冲突。需先关闭:bash sudo systemctl stop firewalld sudo systemctl disable firewalld
- 启动并启用 Docker:
sudo systemctl start docker sudo systemctl enable docker
- 验证安装:
- 运行测试容器:
bash sudo docker run hello-world
- 预期输出为 “Hello from Docker!”,表示安装成功。
- 镜像加速:
- 为加速镜像下载,可配置加速器。阿里云示例:
bash sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://registry.docker-cn.com"] } EOF sudo systemctl restart docker
- 调查显示,腾讯云也提供镜像加速,命令类似。
- 安装 Docker Compose:
- Docker Compose 可通过以下命令安装:
bash curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose
- 调查中,最新版本(2025 年 7 月)为 v2.27.1,功能更强大。
3. CentOS 9 及以上版本安装步骤
基于菜鸟教程,以下是 CentOS 9 Stream 的安装步骤:
- 确保 centos-extras 仓库启用:
- 默认启用,若禁用需重新启用。
- 卸载旧版本:
- 命令为:
sudo dnf remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
- 设置 Docker 仓库:
- 安装 dnf 插件:
bash sudo dnf -y install dnf-plugins-core
- 添加官方仓库:
bash sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
- 可使用清华大学镜像源,命令为:
sed -i 's+[invalid url, do not cite] /etc/yum.repos.d/docker-ce.repo
- 安装 Docker:
- 安装命令为:
sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- 启动 Docker:
- 启动并启用:
sudo systemctl start docker sudo systemctl enable --now docker
- 验证安装:
- 运行:
bash sudo docker run hello-world
4. 优化与扩展
- 中国用户镜像源优化:
- 调查发现,阿里云、清华大学镜像源可显著缩短下载时间,适合网络环境较差的用户。
- 潜在问题与解决方案:
- 若安装过程中出现权限问题,确保以 root 用户或使用
sudo
执行。 - 若仓库添加失败,检查网络连接或镜像源是否正确。
- CentOS 7 用户需注意防火墙冲突,调查建议关闭
firewalld
。
版本与架构支持
根据调查,Docker 支持以下 CentOS 版本(截至 2025 年 7 月):
- CentOS 7(64 位,内核 3.10 以上)
- CentOS 9 Stream 及更高版本
支持的架构包括:
- x86_64 (amd64)
- arm64
- ppc64le
用户需确保系统版本和架构与上述列表匹配。
数据表格
以下是安装步骤的详细总结,方便用户参考:
步骤 | CentOS 7 命令 | CentOS 9+ 命令 |
---|---|---|
支持的版本 | CentOS 7(64 位,内核 3.10+) | CentOS 9 Stream 及以上 |
卸载旧版本 | sudo yum remove docker ... (见上文) | sudo dnf remove docker ... (见上文) |
安装依赖 | sudo yum install -y yum-utils device-mapper-persistent-data lvm2 --skip-broken | sudo dnf -y install dnf-plugins-core (可选) |
设置仓库 | sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/... | sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/... |
安装 Docker | sudo yum install -y docker-ce docker-ce-cli containerd.io ... | sudo dnf install docker-ce docker-ce-cli containerd.io ... |
启动并启用服务 | sudo systemctl start docker , sudo systemctl enable docker (关闭防火墙后) | sudo systemctl start docker , sudo systemctl enable --now docker |
验证安装 | sudo docker run hello-world | sudo docker run hello-world |
镜像加速(可选) | 编辑 /etc/docker/daemon.json ,添加阿里云镜像 | 同 CentOS 7 |
Docker Compose 安装(可选) | curl -L ... > /usr/local/bin/docker-compose , chmod +x ... | 同 CentOS 7 |
引用与进一步阅读
- 菜鸟教程 – CentOS Docker 安装
- 阿里云开发者社区 – Centos7安装Docker
- CSDN博客 – CentOS安装Docker(超详细)
- 官方 Docker 文档(英文):CentOS | Docker Docs
以上资源均于 2025 年 7 月 21 日查阅,确保信息最新。