Linux服务器安装Docker(CentOS系统)
Linux(CentOS/RHEL 系)Docker 安装与配置(保姆级教程)
文档概述
本文档基于 CentOS/RHEL 7/8/9、Rocky Linux 等 RHEL 系发行版,提供 Docker 官方标准安装、配置、验证及问题排查流程,适配 Dify 等容器化应用部署,解决镜像源、服务启动、套接字生成等常见问题,确保 Docker 稳定运行。
一、环境准备
1.1 卸载旧版本 Docker(避免冲突)
sudoyum remove-ydocker\docker-client\docker-client-latest\docker-common\docker-latest\docker-latest-logrotate\docker-logrotate\docker-engine1.2 安装依赖工具包
sudoyuminstall-yyum-utils device-mapper-persistent-data lvm21.3 添加 Docker 官方 YUM 源
sudoyum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo二、Docker 核心组件安装
2.1 安装最新稳定版 Docker CE
- CentOS 8/9/Rocky Linux(推荐 dnf):
sudodnfinstall-ydocker-ce docker-ce-cli containerd.io- CentOS 7(使用 yum):
sudoyuminstall-ydocker-ce docker-ce-cli containerd.io三、服务启动与开机自启
按官方标准顺序启动,确保服务联动正常、/var/run/docker.sock自动生成:
# 1. 启动 containerd(Docker 底层依赖)sudosystemctl start containerd&&sudosystemctlenablecontainerd# 2. 启动 docker.socket 套接字服务sudosystemctl start docker.socket&&sudosystemctlenabledocker.socket# 3. 启动 Docker 主服务并设置开机自启sudosystemctl startdocker&&sudosystemctlenabledocker四、安装验证(3 步核心检查)
4.1 检查 Docker 服务状态
sudosystemctl statusdocker✅ 正常输出:Active: active (running),且显示TriggeredBy: ● docker.socket。
4.2 验证核心通信文件
ls-l/var/run/docker.sock✅ 正常输出:
srw-rw----. 1 root docker 0 月 日 时:分 /var/run/docker.sock4.3 拉取测试镜像验证功能
sudodockerrun--rmhello-world✅ 成功输出:出现Hello from Docker!相关内容。
五、国内镜像源配置(解决拉取慢/失败)
5.1 覆盖写入镜像源配置
sudocat>/etc/docker/daemon.json<<'EOF' { "registry-mirrors": [ "https://9cpn8tt6.mirror.aliyuncs.com", "https://docker.1panel.live", "https://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn", "https://dockerproxy.com" ] } EOF5.2 重载配置并重启 Docker
sudosystemctl daemon-reload&&sudosystemctl restartdocker5.3 验证镜像源生效
dockerinfo|grep-A3"Registry Mirrors"✅ 正常输出:仅显示配置的 3 个国内镜像源。
六、可选配置:非 root 用户免 sudo 执行 Docker
# 将当前用户加入 docker 组sudousermod-aGdocker$USER# 刷新组权限(立即生效)newgrpdocker# 验证免 sudo 执行dockerps七、Docker 常用基础命令
# 查看 Docker 版本docker--version# 查看运行中容器dockerps# 查看所有容器(含停止)dockerps-a# 拉取镜像(示例:PostgreSQL 15)dockerpull postgres:15# 停止 Docker 服务sudosystemctl stopdocker# 重启 Docker 服务sudosystemctl restartdocker# 查看 Docker 详细信息dockerinfo八、常见问题排查
8.1 安装提示「找不到 docker-ce 包」
- 原因:未添加官方 YUM 源,重新执行 1.3 步骤后再安装。
8.2 拉取镜像提示「no such host」
- 原因:DNS 解析异常,配置国内 DNS:
sudocat>/etc/resolv.conf<<'EOF' nameserver 223.5.5.5 nameserver 223.6.6.6 nameserver 8.8.8.8 EOF8.3 启动 Docker 提示「containerd 未启动」
- 原因:启动顺序错误,严格按 3.1 步骤先启动 containerd,再启动 docker.socket,最后启动 docker。
8.4 非 root 用户提示「权限不足」
- 确认用户已加入 docker 组,执行
newgrp docker刷新权限,仍报错则重启服务器。
九、文档总结
- 本文档为 RHEL 系 Linux Docker 官方标准安装流程,无第三方依赖,从根源解决服务启动、套接字、镜像源问题;
- 核心流程:清理旧版本→配置官方源→安装组件→按序启动→配置镜像源→验证;
- 日常管理优先使用
systemctl控制服务,docker命令管理镜像/容器。
