在阿里云轻量应用服务器(Lighthouse)上安装和配置 Docker 非常简单,因为轻量服务器默认支持主流 Linux 发行版(如 Ubuntu、Debian、CentOS 等)。以下是基于 Ubuntu 20.04/22.04 和 CentOS 7/8 的详细步骤,其他系统可参考对应包管理器。
✅ 一、准备工作
-
登录服务器
- 通过 SSH 或阿里云控制台“远程连接”登录你的轻量服务器。
- 确保使用
root用户或有sudo权限的普通用户。
-
更新系统软件源
# Ubuntu / Debian sudo apt update && sudo apt upgrade -y # CentOS / RHEL sudo yum update -y
✅ 二、安装 Docker(推荐官方脚本方式)
方法 A:使用官方一键安装脚本(推荐,自动适配系统)
curl -fsSL https://get.docker.com | bash -s -- --mirror Aliyun
💡 说明:阿里云镜像源已内置在该脚本中,下载更快。若网络异常可改用国内镜像源(见下文备选方案)。
安装完成后验证:
docker --version
sudo systemctl status docker
方法 B:手动安装(适用于需要精细控制版本)
🐧 Ubuntu / Debian
# 安装依赖
sudo apt install -y ca-certificates curl gnupg lsb-release
# 添加 Docker 官方 GPG 密钥
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# 设置仓库
echo
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 安装 Docker Engine
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
# 启动并设置开机自启
sudo systemctl enable --now docker
🐧 CentOS / RHEL
# 安装依赖
sudo yum install -y yum-utils
# 配置阿里云镜像源
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 安装 Docker
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 启动服务
sudo systemctl enable --now docker
✅ 三、配置 Docker 提速(可选但强烈推荐)
由于国内网络限制,建议配置阿里云提速器或国内镜像镜像站:
创建/编辑 /etc/docker/daemon.json
sudo nano /etc/docker/daemon.json
填入以下内容(以阿里云为例):
{
"registry-mirrors": [
"https://docker.mirrors.aliyun.com"
],
"insecure-registries": [],
"log-driver": "json-file",
"log-opts": {
"max-size": "50m",
"max-file": "3"
}
}
⚠️ 注意:
- 若之前已有内容,请保留原有字段,仅添加
"registry-mirrors"。- 修改后需重启 Docker:
sudo systemctl daemon-reload && sudo systemctl restart docker
✅ 四、非 root 用户运行 Docker(避免每次加 sudo)
# 将当前用户加入 docker 组
sudo usermod -aG docker $USER
# 生效(重新登录或执行以下命令)
newgrp docker
验证:
docker run hello-world
✅ 五、常见问题排查
| 问题 | 解决方案 |
|---|---|
Permission denied while trying to connect to the Docker daemon socket |
检查是否已加入 docker 组,或临时用 sudo docker ... |
| 拉取镜像慢 | 确认 daemon.json 中的 registry-mirrors 配置正确且 Docker 已重启 |
| 端口未开放 | 在阿里云控制台 → 实例详情 → “安全组”规则中放行所需端口(如 80, 443, 3000 等) |
✅ 六、快速测试
# 运行一个 Nginx 容器
docker run -d -p 8080:80 --name my-web nginx
# 访问 http://<你的公网IP>:8080 查看效果
docker ps
docker logs my-web
如需进一步集成 Kubernetes、Portainer 管理界面或 CI/CD,可继续扩展部署。需要我提供这些进阶方案吗?
云小栈