速卖通素材
努力

在阿里云轻量服务器上如何部署Docker环境?

服务器

在阿里云轻量应用服务器(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 镜像提速服务:

  1. 登录 阿里云容器镜像服务控制台 → 左侧「镜像工具」→ 「镜像提速器」
  2. 复制你的专属提速地址(形如 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 » 在阿里云轻量服务器上如何部署Docker环境?