在京东云(JD Cloud)的云主机(ECS)上安装和配置 Docker,与在标准 Linux 服务器(如 CentOS、Ubuntu)上类似。以下是详细、安全、生产就绪的安装与配置指南,适用于京东云主流操作系统(推荐 Ubuntu 22.04 LTS 或 CentOS 7/8/Stream),并包含京东云环境下的注意事项。
✅ 前提条件
- 已开通京东云账号,并成功创建一台云主机(ECS);
- 确保实例已分配公网 IP 或可通过 VPC 内网访问;
- 已通过 SSH 登录云主机(如
ssh -i key.pem ubuntu@xxx.xxx.xxx.xxx); - 推荐使用 Ubuntu 22.04 LTS(长期支持、Docker 官方支持好)或 CentOS Stream 9(RHEL 兼容性佳);
⚠️ 注意:京东云部分镜像可能预装旧版 Docker(如 Docker 20.x),建议卸载后安装最新稳定版。
🐳 一、安装 Docker(以 Ubuntu 22.04 为例)
✅ 步骤 1:更新系统 & 安装依赖
sudo apt update && sudo apt upgrade -y
sudo apt install -y ca-certificates curl gnupg lsb-release
✅ 步骤 2:添加 Docker 官方 GPG 密钥和仓库
# 创建密钥目录(若不存在)
sudo mkdir -p /etc/apt/keyrings
# 下载并添加 Docker 官方 GPG 密钥(使用 HTTPS)
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# 添加稳定版仓库(自动适配系统架构,如 amd64/arm64)
echo
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
✅ 京东云提示:确保
https://download.docker.com可达(默认公网网络正常)。如遇国内网络慢,可临时切换为阿里云镜像源(见下方「国内提速选项」)。
✅ 步骤 3:安装 Docker Engine
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
✅ 步骤 4:验证安装
sudo docker --version # 输出类似:Docker version 24.0.7, build afdd53b
sudo docker run hello-world # 首次运行会下载镜像并打印欢迎信息 ✅
🔧 二、基础配置(生产环境必备)
1️⃣ 将当前用户加入 docker 组(免 sudo 运行)
sudo usermod -aG docker $USER
# 重新登录 SSH 或执行以下命令生效(不推荐用于生产脚本)
newgrp docker
✅ 验证:docker ps 应无 permission denied 错误。
2️⃣ 配置 Docker Daemon(关键:日志、存储、镜像提速)
编辑 /etc/docker/daemon.json(若不存在则新建):
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com"
],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
},
"data-root": "/var/lib/docker", // 可根据磁盘挂载点调整(见京东云扩容建议)
"storage-driver": "overlay2"
}
EOF
💡 京东云特别提示:
- 若你为云主机挂载了独立数据盘(如
/data),强烈建议将data-root改为/data/docker,避免系统盘爆满:"data-root": "/data/docker"并提前执行:
sudo mkdir -p /data/docker sudo chown root:root /data/docker sudo systemctl restart docker
3️⃣ 启用并启动 Docker 服务
sudo systemctl enable docker
sudo systemctl start docker
sudo systemctl status docker # 检查是否 active (running)
🌐 三、国内镜像提速(京东云用户强烈推荐)
京东云用户常因网络延迟导致 docker pull 缓慢,务必配置镜像提速器:
| 提速器 | 地址 |
|---|---|
| 中科大镜像站 | https://docker.mirrors.ustc.edu.cn |
| 网易镜像站 | https://hub-mirror.c.163.com |
| 百度镜像站 | https://mirror.baidubce.com |
✅ 已在上一步 daemon.json 中配置,无需额外操作。
✅ 测试提速效果:
time sudo docker pull nginx:alpine
🛡 四、安全加固建议(生产环境)
| 项目 | 建议操作 |
|---|---|
| 🔐 禁用 insecure-registries | 确保 daemon.json 中未配置 insecure-registries(除非内网私有仓库且明确需要) |
| 📜 启用内容信任(可选) | export DOCKER_CONTENT_TRUST=1(对 docker pull/build 强制签名校验) |
| 🧹 定期清理 | docker system prune -a --volumes(谨慎执行,建议写入定时任务前测试) |
| 📊 监控集成 | 可对接京东云云监控(JCM)或 Prometheus + cAdvisor(需开放容器指标端口) |
🐧 CentOS/RHEL 系统安装(简略版)
若使用 CentOS 7/8/Stream:
# 卸载旧版(如有)
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
# 安装依赖
sudo yum install -y yum-utils
# 添加仓库(以 CentOS Stream 9 为例)
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装(注意版本兼容性)
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable docker && sudo systemctl start docker
⚠️ CentOS 7 用户注意:内核需 ≥ 3.10(京东云默认满足),但建议升级至
kernel-ml(主线稳定版)以更好支持 overlay2。
❓常见问题排查
| 现象 | 解决方案 |
|---|---|
Cannot connect to the Docker daemon |
检查 sudo systemctl status docker;确认用户已在 docker 组并重登 |
Permission denied while trying to connect to the Docker daemon socket |
执行 sudo chmod 666 /var/run/docker.sock(仅临时调试,生产环境禁止! 正确做法是加组) |
Failed to start docker.service: Unit not found |
检查是否安装了 docker-ce(非 docker 或 docker-io) |
overlay2: no such file or directory |
检查内核是否支持 overlay2:cat /proc/filesystems | grep overlay;如无输出,升级内核或改用 vfs(性能差,不推荐) |
✅ 最终验证清单(执行完请逐项确认)
- [ ]
docker --version输出正常版本号 - [ ]
docker run --rm hello-world成功输出 - [ ]
docker info | grep "Storage Driver"→overlay2 - [ ]
docker info | grep "Registry Mirrors"→ 显示国内镜像地址 - [ ] 普通用户(非 root)可执行
docker ps - [ ]
sudo systemctl is-enabled docker→enabled
如需进一步集成:
- ✅ 搭建私有 Registry(京东云对象存储 COS + Nginx 反向X_X)
- ✅ 使用京东云容器服务(JDCCS)替代自建 Docker(托管 K8s 更省心)
- ✅ 配置 Docker Compose + Nginx 反向X_X部署 Web 应用
需要我为你生成 一键安装脚本、Docker Compose 示例(Nginx+PHP+MySQL),或指导 对接京东云 COS 作为镜像仓库,欢迎随时告诉我 👇
祝你在京东云上 Docker 驾轻就熟,高效稳定!🚀
云小栈