在阿里云轻量应用服务器(Lighthouse)上部署 Docker 环境非常简单,以下是完整、安全、推荐的步骤(以 Ubuntu 22.04 / CentOS 7/8 / Alibaba Cloud Linux 3 为例,重点适配阿里云环境):
✅ 前提条件
- 已购买并启动一台阿里云 轻量应用服务器(Lighthouse);
- 推荐选择系统镜像:
Alibaba Cloud Linux 3(兼容 RHEL/CentOS,性能优化好)或Ubuntu 22.04 LTS; - 已通过 SSH 登录服务器(如
ssh root@<公网IP>); - 确保已配置安全组规则:开放所需端口(如 22、80、443),Docker 默认不需额外放行(容器端口需单独映射并放行)。
🐳 步骤 1:更新系统 & 安装依赖(通用)
# Alibaba Cloud Linux 3 / CentOS 7/8/9 / RHEL
sudo yum update -y
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl gnupg2 software-properties-common ca-certificates
💡 阿里云镜像源提速(可选但推荐):
# Alibaba Cloud Linux / CentOS:切换为阿里云 yum 源(已默认启用,无需操作) # Ubuntu:可替换为阿里云源(非必须,但更快) sudo sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list sudo sed -i 's/security.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list sudo apt update
🐳 步骤 2:安装 Docker(官方推荐方式)
✅ 推荐方式:使用 Docker 官方仓库(稳定、版本可控)
▪️ 对于 Alibaba Cloud Linux 3 / CentOS 7/8/9:
# 添加 Docker 官方 yum 仓库(使用阿里云镜像提速下载)
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# ⚠️ 注意:Alibaba Cloud Linux 3 使用的是 `centos` repo,完全兼容
# 安装最新稳定版 Docker CE
sudo yum install -y docker-ce docker-ce-cli containerd.io
# 启动并设置开机自启
sudo systemctl enable docker
sudo systemctl start docker
# 验证安装
sudo docker --version
sudo docker run hello-world # 首次运行会拉取镜像并输出欢迎信息
▪️ 对于 Ubuntu 22.04:
# 添加 Docker GPG 密钥和仓库
curl -fsSL https://mirrors.aliyun.com/docker-ce/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://mirrors.aliyun.com/docker-ce/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
sudo systemctl enable docker
sudo systemctl start docker
sudo docker --version
sudo docker run hello-world
✅ 验证成功后你会看到类似输出:
Hello from Docker! This message shows that your installation appears to be working correctly.
🛡️ 步骤 3:(重要)配置非 root 用户免 sudo 运行 Docker(提升安全性与便利性)
# 创建 docker 组(若不存在)
sudo groupadd docker
# 将当前用户(如 root 或你的普通用户)加入 docker 组
sudo usermod -aG docker $USER
# 🔁 重新登录 SSH 或刷新组权限(对当前会话生效)
newgrp docker # 或直接退出重登 SSH
# 测试(无需 sudo)
docker ps -a # 应正常返回空列表
⚠️ 注意:不要将
root加入 docker 组(它已有权限),但如果你用的是普通用户(如ubuntu),务必执行此步。
🌐 步骤 4:(可选但强烈推荐)配置国内镜像提速器(解决 pull 慢/超时问题)
阿里云提供免费 Docker Hub 镜像提速服务:
- 登录 阿里云容器镜像服务控制台 → 左侧「镜像工具」→ 「镜像提速器」
- 复制你的专属提速地址(形如
https://xxxxx.mirror.aliyuncs.com)
# 创建或编辑 daemon.json
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xxxxx.mirror.aliyuncs.com"],
"live-restore": true
}
EOF
# 重启 Docker 生效
sudo systemctl daemon-reload
sudo systemctl restart docker
# 验证配置是否生效
sudo docker info | grep "Registry Mirrors" -A 1
✅ 成功后 docker pull ubuntu:22.04 等操作将显著提速。
🧪 步骤 5:快速验证(可选示例)
# 运行一个 Nginx 容器测试
sudo docker run -d -p 8080:80 --name my-nginx -v /var/www:/usr/share/nginx/html nginx:alpine
# 在浏览器访问 http://<你的服务器公网IP>:8080
# 若看到 Nginx 欢迎页即成功 ✅
🔒 安全提醒:生产环境请务必:
- 关闭不必要的端口(安全组限制);
- 避免使用
--privileged;- 定期更新 Docker 和镜像;
- 使用
docker system prune清理无用资源。
❌ 常见问题速查
| 问题 | 解决方案 |
|---|---|
Cannot connect to the Docker daemon |
检查 sudo systemctl status docker,确认服务已启动;检查用户是否在 docker 组 |
Permission denied while trying to connect to Docker daemon |
执行 newgrp docker 或重登 SSH;检查 /var/run/docker.sock 权限(应属 docker 组) |
docker pull 超时/慢 |
务必配置阿里云镜像提速器(步骤 4) |
yum install docker-ce 报错 no package |
确认系统架构(uname -m 应为 x86_64),检查仓库是否启用:yum repolist |
✅ 完成! 你现在已在阿里云轻量服务器上成功部署生产就绪的 Docker 环境。
如需进一步部署:
- ✅ Docker Compose:
sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && sudo chmod +x /usr/local/bin/docker-compose - ✅ Portainer(可视化管理):
docker run -d -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
需要我帮你写一个一键部署脚本(Shell)、或部署 WordPress/Nginx/MySQL 等典型应用?欢迎继续提问! 😊
轻量云Cloud