在京东云(JD Cloud)的云服务器(ECS/EC2)上部署 Docker 环境,通常涉及以下几个关键的前置配置步骤。这些步骤确保了系统兼容性、安全性和 Docker 服务的正常运行。
✅ 一、基础系统要求
-
操作系统选择
- 推荐:Ubuntu 20.04/22.04 LTS、CentOS 7/8、Debian 10/11、Amazon Linux 2 等主流 Linux 发行版。
- Windows Server 也可支持 Docker Desktop(WSL2),但生产环境建议使用 Linux。
-
内核版本要求
- Docker 需要 Linux 内核 ≥ 3.10(CentOS 7+、Ubuntu 16.04+ 均满足)。
- 对于高级功能(如 overlay2 存储驱动、cgroup v2),建议内核 ≥ 4.0。
-
资源最低配置
- CPU:≥ 1 核
- 内存:≥ 1 GB(建议 ≥ 2 GB 以稳定运行多个容器)
- 磁盘:≥ 20 GB(Docker 镜像和容器数据会占用空间)
✅ 二、网络与安全组配置
-
开放必要端口
- 根据你运行的服务开放端口(如 Web 服务默认 80/443,SSH 22 等)。
- Docker 本身不监听外部端口,除非你映射了容器端口。
-
安全组规则(京东云控制台)
- 确保入站规则允许所需 TCP/UDP 端口。
- 示例:若运行 Nginx,需开放
80和443端口。
-
防火墙设置
- CentOS/RHEL:使用
firewalld或iptables - Ubuntu/Debian:使用
ufw或iptables - 确保防火墙不会阻止 Docker 的网络通信(Docker 会自动管理 iptables 规则,但某些系统可能冲突)。
- CentOS/RHEL:使用
✅ 三、系统更新与依赖安装
1. 更新系统包
# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
# CentOS/RHEL
sudo yum update -y
2. 安装必要依赖
# Ubuntu/Debian
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
# CentOS/RHEL
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
✅ 四、安装 Docker Engine
⚠️ 不要使用
apt-get install docker.io或yum install docker,这些是旧版或非官方维护的版本。
方法一:使用官方脚本(快速)
curl -fsSL https://get.docker.com | sh
方法二:手动添加官方仓库并安装(推荐)
Ubuntu/Debian:
# 添加 Docker GPG key
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
# 安装 Docker
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
CentOS/RHEL:
# 添加 Docker 仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装 Docker
sudo yum install -y docker-ce docker-ce-cli containerd.io
✅ 五、启动并启用 Docker 服务
# 启动 Docker
sudo systemctl start docker
# 设置开机自启
sudo systemctl enable docker
# 验证安装
docker --version
sudo docker run hello-world
✅ 六、非 root 用户运行 Docker(可选但推荐)
为安全起见,建议创建 docker 用户组并将当前用户加入:
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker
注销并重新登录后,即可无需
sudo运行 Docker 命令。
✅ 七、配置镜像提速器(国内必做)
由于 Docker Hub 在国内访问缓慢,建议配置阿里云、腾讯云或京东云镜像提速器。
示例:配置阿里云镜像提速器
- 登录 阿里云容器镜像服务
- 获取你的专属提速器地址
- 编辑
/etc/docker/daemon.json:{ "registry-mirrors": ["https://<your-id>.mirror.aliyuncs.com"] } - 重启 Docker:
sudo systemctl daemon-reload sudo systemctl restart docker
✅ 八、其他注意事项
-
SELinux(CentOS/RHEL)
- 如果启用 SELinux,可能需要调整策略或使用
--privileged模式(不推荐生产环境)。 - 可通过
sestatus查看状态,临时禁用:setenforce 0(不推荐长期禁用)。
- 如果启用 SELinux,可能需要调整策略或使用
-
Swap 分区
- Docker 在某些内核版本下对 Swap 敏感,建议关闭 Swap:
sudo swapoff -a sudo sed -i '/swap/d' /etc/fstab
- Docker 在某些内核版本下对 Swap 敏感,建议关闭 Swap:
-
日志轮转
- Docker 日志可能快速增长,建议配置
journald或logrotate限制日志大小。
- Docker 日志可能快速增长,建议配置
-
安全加固
- 定期更新 Docker 和系统补丁。
- 避免暴露 Docker API 到公网(默认监听
/var/run/docker.sock,仅本地访问)。
✅ 总结 checklist
| 步骤 | 内容 |
|---|---|
| ✅ | 选择合适的 Linux 发行版 |
| ✅ | 更新系统和内核 |
| ✅ | 安装 Docker 官方依赖 |
| ✅ | 从官方源安装 Docker CE |
| ✅ | 启动并启用 Docker 服务 |
| ✅ | 配置非 root 用户权限 |
| ✅ | 配置国内镜像提速器 |
| ✅ | 调整防火墙和安全组 |
| ✅ | 关闭 Swap(可选) |
| ✅ | 测试 Docker 是否正常工作 |
完成以上步骤后,你的京东云服务器就具备了完整的 Docker 运行环境,可以开始部署容器化应用了。
云知识CLOUD