如何在京东云Linux服务器上安装Docker环境?

在京东云(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 默认使用 containerd 1.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 容器化应用?欢迎继续提问! 😊

未经允许不得转载:云计算导航 » 如何在京东云Linux服务器上安装Docker环境?