在京东云(以及大多数国内主流云厂商)的 Ubuntu 实例上安装 Docker,最稳妥且高效的方式依然是使用 Docker 官方提供的自动化脚本。虽然网上有很多“一键安装包”,但为了保持环境的纯净和后续维护的便利性,强烈建议遵循官方最佳实践。
以下是基于 Ubuntu 20.04/22.04 LTS 版本的标准操作流程。整个过程分为环境准备、执行安装脚本、验证及基础配置四个步骤。
1. 前置条件检查
登录你的京东云 Ubuntu 服务器后,首先确认系统版本和内核状态。Docker 对 Linux 内核有一定要求(通常 3.10+),现代 Ubuntu 版本均满足。
# 查看 Ubuntu 版本
lsb_release -a
# 确保系统包索引是最新的
sudo apt update
2. 使用官方脚本快速安装
Docker 官方提供了一个名为 get-docker.sh 的脚本,它会自动检测操作系统类型并安装对应版本的 Docker Engine、CLI 和 Containerd。这是目前最快的方式。
注意: 该脚本需要 root 权限或 sudo 权限。出于安全考虑,建议先审查脚本内容,或者直接通过管道执行(生产环境谨慎操作)。
# 下载官方安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh
# 执行脚本进行安装
sudo sh get-docker.sh
执行过程中,脚本会:
- 添加 Docker 官方 GPG 密钥。
- 添加 Docker 软件源仓库。
- 安装
docker-ce(Community Edition)、docker-ce-cli和containerd.io。 - 启动 Docker 服务。
如果网络通畅(从国外拉取源),这一步通常在一分钟内完成。如果你的服务器在国内,有时可能会遇到连接 Docker Hub 仓库超时的问题。如果遇到这种情况,可以切换为阿里云或清华大学的镜像源辅助安装,或者直接使用下面的手动安装方式。
3. 非 Root 用户管理 Docker(可选但推荐)
默认情况下,只有 root 用户才能运行 Docker 命令。为了方便日常开发,建议创建一个 docker 用户组,并将当前用户加入其中。这样无需每次输入 sudo。
# 创建 docker 组(如果不存在)
sudo groupadd docker
# 将当前用户添加到 docker 组
sudo usermod -aG docker $USER
# 使更改立即生效,或者注销重新登录
newgrp docker
4. 配置国内镜像提速(关键步骤)
在中国大陆地区,直接拉取 Docker Hub 的镜像速度极慢甚至超时。安装完成后,必须配置镜像提速器。京东云本身提供了针对其用户的镜像提速地址,但通常通用的阿里云或腾讯云提速地址也完全可用。
编辑 /etc/docker/daemon.json 文件:
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://mirror.ccs.tencentyun.com",
"https://registry.docker-cn.com"
]
}
EOF
提示:
mirror.ccs.tencentyun.com是腾讯云的公共镜像提速,稳定性较好;你也可以替换为你自己在阿里云控制台获取的个人专属提速地址。
重启 Docker 服务以应用配置:
sudo systemctl daemon-reload
sudo systemctl restart docker
5. 验证安装与自启动设置
最后,检查 Docker 是否正常运行,并设置开机自启。
# 检查 Docker 版本
docker --version
# 运行 Hello World 测试
docker run hello-world
# 设置 Docker 开机自启动
sudo systemctl enable docker
如果 docker run hello-world 成功打印出 “Hello from Docker!” 消息,说明安装成功。
常见问题与排错
- 权限问题:如果提示
Cannot connect to the Docker daemon,请确认是否已正确执行了usermod并将用户加入了docker组,然后重新登录终端。 - 网络问题:如果在执行
get-docker.sh时失败,可能是 DNS 解析或防火墙限制。可以尝试更换 DNS 为8.8.8.8或114.114.114.114,或者手动按照官方文档添加 APT 源进行安装。 - 版本选择:上述脚本安装的是最新稳定版。如果你需要特定版本(如企业级支持需求),可以使用
apt install docker-ce=<VERSION_STRING>指定版本。
这套流程适用于绝大多数 Ubuntu 云主机场景,简洁且符合官方规范,避免了第三方脚本可能带来的安全隐患。
云技术博客