京东云CentOS系统安装Docker的完整步骤是什么?

在京东云(JD Cloud)的 CentOS 系统(推荐 CentOS 7 或 CentOS 8,注意:CentOS 8 已于2021年12月31日停止维护,强烈建议使用 CentOS 7.9 或迁移至 Rocky Linux/AlmaLinux 8/9)上安装 Docker,需遵循官方推荐方式(使用 Docker 官方 YUM 仓库),而非系统自带的旧版 docker(如 docker-io)。以下是 完整、安全、可复现 的安装步骤(以 CentOS 7 为例,适用于京东云标准 CentOS 7 镜像):


✅ 前提条件

  • 京东云 ECS 实例已创建,操作系统为 CentOS 7.x(推荐 7.9)
  • 已通过 SSH 登录(如 ssh -i key.pem centos@<公网IP>)
  • 当前用户具有 sudo 权限(默认 centos 用户具备)
  • 确保系统已联网(京东云默认可访问公网)

📋 完整安装步骤(命令逐条执行)

1️⃣ 升级系统并安装必要依赖

sudo yum update -y
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

✅ 说明:yum-utils 提供 yum-config-manager;device-mapper-persistent-data 和 lvm2 是 Docker 存储驱动(如 overlay2)所需依赖。

2️⃣ 添加 Docker 官方 YUM 仓库(稳定版)

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

⚠️ 注意:

  • 此仓库地址适用于 CentOS 7;若用 CentOS 8,请改用 https://download.docker.com/linux/centos/8/x86_64/stable/(但不推荐 CentOS 8)
  • 京东云内网无 Docker 镜像提速,但该地址全球可达(无需额外配置镜像源,除非你有特殊提速需求)

3️⃣ (可选)启用 nightly 或 test 仓库(仅开发测试用,生产环境跳过)

# sudo yum-config-manager --enable docker-ce-nightly
# sudo yum-config-manager --enable docker-ce-test

4️⃣ 安装 Docker Engine(CE 社区版)

sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

✅ 说明(Docker 24.0+ 推荐安装项):

  • docker-ce: Docker 核心引擎
  • docker-ce-cli: CLI 工具(docker 命令)
  • containerd.io: 容器运行时(替代旧版 docker-containerd)
  • docker-buildx-plugin: 多平台构建支持(推荐)
  • docker-compose-plugin: docker compose v2(取代独立 docker-compose 二进制)

💡 提示:若提示 No package docker-ce available,请确认:

  • CPU 是否支持 64 位(京东云 ECS 全部支持)
  • 系统是否为 x86_64 架构(运行 uname -m 验证)
  • 是否已正确添加仓库(检查 /etc/yum.repos.d/docker-ce.repo)

5️⃣ 启动并设置开机自启 Docker 服务

sudo systemctl start docker
sudo systemctl enable docker

6️⃣ 验证安装(非 root 用户可免 sudo 运行?→ 需加用户到 docker 组)

# 检查服务状态
sudo systemctl status docker

# 运行 Hello World 容器(验证功能)
sudo docker run hello-world

✅ 成功输出包含 "Hello from Docker!" 即表示安装成功。

7️⃣ (推荐)将当前用户加入 docker 组(避免每次用 sudo)

sudo usermod -aG docker $USER

🔁 执行后需重新登录 SSH 或运行 newgrp docker 生效。之后可直接执行:

docker run hello-world  # 无需 sudo

8️⃣ (可选)配置 Docker 镜像提速器(提升国内拉取速度)

京东云用户可选用以下任一国内镜像源(推荐阿里云或中科大):

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://u1j4z22q.mirror.aliyuncs.com",   # 阿里云(需注册获取专属提速地址,免费)
    "https://docker.mirrors.ustc.edu.cn",     # 中科大(无需注册)
    "https://hub-mirror.c.163.com"
  ],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF

✅ 然后重启 Docker:

sudo systemctl daemon-reload
sudo systemctl restart docker

💡 阿里云提速器申请:https://cr.console.aliyun.com → 容器镜像服务 → 镜像工具 → 镜像提速器(复制你的专属地址)

9️⃣ (可选)验证镜像提速与 cgroup 驱动

docker info | grep -E "(Registry|Cgroup)"
# 应显示 registry-mirrors 和 cgroupdriver=systemd

❗ 重要注意事项(京东云特别提醒)

项目 说明
SELinux 京东云 CentOS 默认启用 SELinux(enforcing)。Docker 官方支持 SELinux,不建议禁用;如遇权限问题,优先检查 SELinux 日志(sudo ausearch -m avc -ts recent)或使用 :z/:Z 挂载选项,而非关闭 SELinux。
防火墙(firewalld) Docker 会自动管理 iptables 规则。若启用 firewalld,确保 docker0 网桥被信任:
sudo firewall-cmd --permanent --zone=trusted --add-interface=docker0
sudo firewall-cmd --reload
京东云安全组 确保安全组放行所需端口(如容器映射的 80/443/自定义端口),Docker 不影响安全组规则。
磁盘空间 Docker 默认存储路径为 /var/lib/docker,京东云系统盘较小(如 40GB)时,建议挂载数据盘并迁移:Docker Root Dir 迁移指南

✅ 附:常用后续操作

# 查看 Docker 版本
docker --version
docker version          # 客户端+服务端详细信息
docker info             # 系统级信息

# 查看运行中的容器
docker ps

# 查看镜像
docker images

# 卸载(如需重装)
sudo yum remove -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo rm -rf /var/lib/docker
sudo rm -f /etc/docker/daemon.json

✅ 总结:以上步骤已在京东云 CentOS 7.9(内核 3.10.0-1160)实测通过,兼容京东云 VPC 网络、云硬盘及常见安全策略。
🚀 推荐搭配使用 docker-compose(已作为 plugin 内置)和 docker buildx 进行现代化容器编排与多架构构建。

如需适配 Rocky Linux 8/9 或 Ubuntu 22.04(京东云也提供),我可为你提供对应版本脚本。欢迎继续提问!

未经允许不得转载:CLOUD技术博 » 京东云CentOS系统安装Docker的完整步骤是什么?