在京东云(JD Cloud)的 Linux 服务器(通常为 CentOS 7/8、Ubuntu 20.04/22.04 等)上安装 Docker,推荐使用 官方 Docker 安装方式(通过 Docker CE 仓库),安全、稳定且易于更新。以下是详细、可复现的操作步骤(以主流系统为例):
✅ 前提条件
- 已登录京东云控制台,创建并启动一台 Linux 云服务器(建议至少 2GB 内存)。
- 使用 SSH 连接到服务器(如:
ssh -i your-key.pem centos@xxx.xxx.xxx.xxx)。 - 推荐使用
root用户操作,或确保当前用户有sudo权限。
🐳 一、通用准备工作(所有 Linux 发行版均需执行)
# 1. 更新系统包索引
sudo apt update && sudo apt upgrade -y # Ubuntu/Debian
# 或
sudo yum update -y # CentOS 7
# 或(CentOS 8/RHEL 8+)
sudo dnf update -y
# 2. 卸载旧版本 Docker(如有)
sudo apt remove docker docker-engine docker.io containerd runc -y # Ubuntu
# 或
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 -y # CentOS 7
# 3. 安装必要依赖
# Ubuntu/Debian:
sudo apt install -y ca-certificates curl gnupg lsb-release
# CentOS 7/8:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# CentOS 8+/RHEL 8+(推荐用 dnf):
sudo dnf install -y dnf-plugins-core
🐳 二、安装 Docker CE(官方推荐方式)
▶️ 方式 1:Ubuntu 20.04 / 22.04(推荐)
# 添加 Docker 官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 添加稳定版仓库(自动适配系统架构)
echo
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 更新包索引并安装
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 启动并设为开机自启
sudo systemctl enable docker
sudo systemctl start docker
# 验证安装
sudo docker --version
sudo docker run hello-world # ✅ 第一次运行会下载测试镜像并输出欢迎信息
▶️ 方式 2:CentOS 7(长期支持,京东云常见)
# 添加 Docker CE 仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装最新版 Docker CE(默认安装最新稳定版)
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 启动 Docker 服务
sudo systemctl enable docker
sudo systemctl start docker
# 验证
sudo docker --version
sudo docker run hello-world
⚠️ 注意:CentOS 7 默认使用
containerd1.6+,若遇兼容问题(如failed to start daemon: error initializing graphdriver: driver not supported),可指定安装较老版本(如docker-ce-20.10.24):yum list docker-ce --showduplicates | sort -r sudo yum install -y docker-ce-20.10.24 docker-ce-cli-20.10.24 containerd.io-1.6.32
▶️ 方式 3:CentOS 8 / Rocky Linux / AlmaLinux(推荐用 dnf)
# 启用 Extras 仓库(确保 containerd 可用)
sudo dnf config-manager --set-enabled powertools # CentOS 8
# 或(Rocky/Alma 8+):
sudo dnf config-manager --set-enabled appstream
# 添加 Docker 仓库
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装(Docker CE 24+ 要求内核 ≥ 4.18,京东云默认内核满足)
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable docker && sudo systemctl start docker
sudo docker run hello-world
✅ 三、(可选但强烈推荐)配置非 root 用户免 sudo 运行 Docker
# 创建 docker 组(如不存在)
sudo groupadd docker
# 将当前用户加入 docker 组
sudo usermod -aG docker $USER
# 生效组权限(立即生效,无需重启;也可新开终端)
newgrp docker
# 验证(退出再登录或执行 newgrp 后):
docker ps # 不应提示 permission denied
🔒 安全提示:将用户加入
docker组等同于赋予其 root 权限(因容器可挂载宿主机敏感路径),仅用于可信环境(如个人开发服务器)。
✅ 四、(可选)配置国内镜像提速(提升拉取速度,京东云推荐)
京东云用户可使用以下任一国内镜像源(避免访问 docker.io 缓慢):
| 镜像源 | 地址 |
|---|---|
| 阿里云镜像提速器(需免费注册获取专属地址) | https://<your-id>.mirror.aliyuncs.com |
| 中科大镜像源 | https://docker.mirrors.ustc.edu.cn |
| 网易镜像源 | https://hub-mirror.c.163.com |
| 京东云内部镜像(如开通了 JD Cloud Container Registry) | https://jcr.jdcloud.com(需认证) |
配置方法(以中科大镜像为例):
# 创建或编辑 daemon.json
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"],
"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
✅ 验证镜像提速是否生效:
sudo docker info | grep "Registry Mirrors" -A 2
✅ 五、验证与常用命令
# 查看 Docker 状态
sudo systemctl status docker
# 查看基本信息
docker info
# 查看运行中的容器
docker ps
# 查看所有容器(含已停止)
docker ps -a
# 拉取并运行 Nginx 示例(快速验证)
docker run -d -p 8080:80 --name my-nginx nginx
# 访问 http://<你的京东云公网IP>:8080 即可看到 Nginx 欢迎页
🌐 注意:京东云安全组需放行对应端口(如 8080),否则外部无法访问。
❗ 常见问题排查
| 现象 | 可能原因 | 解决方案 |
|---|---|---|
Cannot connect to the Docker daemon |
Docker 未启动或权限不足 | sudo systemctl start docker + 加入 docker 组 |
Error response from daemon: Get "https://registry-1.docker.io/v2/" |
网络不通或无镜像提速 | 配置国内镜像源(见第四步) |
Failed to start docker.service: Unit not found |
包名错误或仓库未启用 | 检查 yum list docker-ce 是否有结果,确认仓库添加成功 |
overlay2 报错(CentOS 7) |
内核版本过低或文件系统不支持 | 升级内核至 ≥ 3.10.0-1127,或改用 devicemapper(不推荐) |
✅ 完成! 你已在京东云 Linux 服务器上成功部署 Docker 环境,可开始部署应用、构建镜像、运行容器等。
如需进一步部署:
🔹 Docker Compose 安装指南
🔹 京东云容器服务 JCS(托管 Kubernetes)对接
🔹 使用京东云镜像仓库 JCR 托管私有镜像
需要我为你生成一键安装脚本(适配京东云不同 OS)、或帮你部署 Nginx/MySQL/WordPress 容器化应用?欢迎继续提问! 😊
云计算导航