适用环境:CentOS 7.x / CentOS 8.x
架构:x86_64
目标:完成 Docker Engine 的安装、启动及基础验证
前置条件
| 项目 | 要求 |
|---|---|
| 操作系统 | CentOS 7 / CentOS 8(最小化或标准安装均可) |
| 网络 | 可正常访问外网(需下载 Docker 官方仓库及镜像) |
| 权限 | 具备 sudo 权限或直接使用 root 用户操作 |
| SELinux | 建议临时设为 permissive 或正确配置策略(setenforce 0 测试用) |
安装步骤
步骤 1:卸载旧版本 Docker(如有)
若系统中已存在旧版 Docker 或其相关组件,需先执行卸载,避免冲突。
bash
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
预期结果:系统提示 No Packages marked for removal 或成功移除相关包,均属正常。
步骤 2:安装必要依赖包
bash
sudo yum install -y yum-utils
| 安装包 | 用途 |
|---|---|
yum-utils | 提供 yum-config-manager 工具,用于管理 YUM 仓库 |
步骤 3:添加 Docker 官方 YUM 仓库
bash
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
预期结果:仓库文件被写入 /etc/yum.repos.d/docker-ce.repo,并自动启用。
步骤 4:安装 Docker Engine
bash
sudo yum install -y docker-ce docker-ce-cli containerd.io
| 安装包 | 说明 |
|---|---|
docker-ce | Docker 引擎核心(社区版) |
docker-ce-cli | Docker 命令行工具(docker 命令) |
containerd.io | 容器运行时(负责容器生命周期管理) |
步骤 5:启动 Docker 服务
bash
sudo systemctl start docker
验证服务状态:
bash
sudo systemctl status docker
预期输出应包含 active (running) 字段。
步骤 6:验证 Docker 安装是否成功
bash
sudo docker run hello-world
预期结果:Docker 将拉取测试镜像并输出一段欢迎信息,末尾包含 This message shows that your installation appears to be working correctly. 字样。
可选配置
设置 Docker 开机自启
bash
sudo systemctl enable docker
将普通用户加入 Docker 组(免 sudo 执行)
bash
sudo usermod -aG docker $USER
生效方式:执行后需重新登录当前用户会话,组权限方可生效。
验证方法(重新登录后执行):
bash
docker run hello-world
若无 sudo 且正常输出,则配置成功。
操作速查表
| 操作 | 命令 |
|---|---|
| 卸载旧版 Docker | sudo yum remove docker* |
| 安装依赖 | sudo yum install -y yum-utils |
| 添加官方仓库 | sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo |
| 安装 Docker | sudo yum install -y docker-ce docker-ce-cli containerd.io |
| 启动服务 | sudo systemctl start docker |
| 查看服务状态 | sudo systemctl status docker |
| 运行测试容器 | sudo docker run hello-world |
| 设置开机自启 | sudo systemctl enable docker |
| 用户加入 docker 组 | sudo usermod -aG docker $USER |
注意事项
| 项目 | 说明 |
|---|---|
| 系统差异 | CentOS 8 默认使用 dnf 作为包管理器,若提示 yum 命令不存在,请将上述所有 yum 替换为 dnf 执行。 |
| 网络要求 | 需能正常访问 download.docker.com,若网络受限,建议提前配置代理或更换国内镜像源。 |
| 内核兼容性 | Docker 要求 CentOS 内核版本不低于 3.10(CentOS 7 默认满足),可使用 uname -r 查看。 |
| SELinux 策略 | 若生产环境强制开启 SELinux,需额外配置 Docker 相关策略,否则容器可能无法访问宿主机资源。 |
| 防火墙规则 | 如需对外暴露容器端口,请确保防火墙(firewalld/iptables)已放行相应端口。 |
延伸阅读
- Docker 官方文档:https://docs.docker.com/engine/install/centos/
- CentOS 8 使用
dnf安装 Docker 指南 - 配置 Docker 国内镜像加速器(阿里云 / 中科大)
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END







- 最新
- 最热
查看全部