在腾讯云轻量应用服务器(Lighthouse)上安装 Docker 并部署项目,是一个标准化且高效的操作流程。以下是详细的步骤指南,涵盖从环境准备到项目部署的全过程。
一、前置条件
-
登录腾讯云平台
- 进入 腾讯云控制台
- 找到你的轻量应用服务器实例,记录 公网 IP 地址 和 用户名/密码(或 SSH 私钥)。
-
连接服务器
- 使用终端(Linux/macOS)或 PuTTY/Xshell(Windows)通过 SSH 连接服务器:
ssh root@<你的服务器IP> - 首次登录可能需要确认指纹,输入
yes并回车。
- 使用终端(Linux/macOS)或 PuTTY/Xshell(Windows)通过 SSH 连接服务器:
-
更新系统(推荐)
yum update -y # CentOS/Alibaba Cloud Linux # 或 apt update && apt upgrade -y # Ubuntu/Debian
二、安装 Docker
方法一:一键脚本安装(推荐新手)
Docker 官方提供便捷的安装脚本:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
✅ 优点:自动处理依赖、配置镜像源(阿里云)、启动服务。
⚠️ 注意:该脚本会安装最新稳定版 Docker CE。
方法二:手动安装(更可控)
1. 安装依赖
# CentOS/RHEL
yum install -y yum-utils device-mapper-persistent-data lvm2
# Ubuntu/Debian
apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
2. 添加 Docker 官方 GPG 密钥和仓库
# 设置阿里云镜像源提速
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo | tee /etc/yum.repos.d/docker-ce.repo
# 或者使用官方源
curl -fsSL https://download.docker.com/linux/centos/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
3. 安装 Docker Engine
# CentOS
yum install -y docker-ce docker-ce-cli containerd.io
# Ubuntu
apt install -y docker-ce docker-ce-cli containerd.io
4. 启动并设置开机自启
systemctl start docker
systemctl enable docker
5. 验证安装
docker --version
docker run hello-world
📌 建议配置阿里云镜像提速器(提升拉取速度):
- 登录 阿里云容器镜像服务
- 获取专属提速器地址
- 创建
/etc/docker/daemon.json:{ "registry-mirrors": ["https://<你的提速器地址>.mirror.aliyuncs.com"] }- 重启 Docker:
systemctl daemon-reload systemctl restart docker
三、安装 Docker Compose(可选但强烈推荐)
大多数项目需要多个容器协同工作,Docker Compose 是必备工具。
# 下载最新稳定版 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 赋予执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 验证
docker-compose --version
💡 替代方案:也可将 Docker Compose 作为插件安装:
apt install docker-compose-plugin # Ubuntu/Debian yum install docker-compose-plugin # CentOS
四、部署项目示例(以 Nginx + Node.js 为例)
场景假设:
你有一个前端静态资源(Nginx)和一个后端 API(Node.js),希望用 Docker Compose 统一管理。
1. 创建项目目录
mkdir ~/myproject
cd ~/myproject
2. 编写 docker-compose.yml
version: '3.8'
services:
web:
image: nginx:alpine
ports:
- "80:80"
volumes:
- ./nginx/conf.d:/etc/nginx/conf.d
- ./frontend/dist:/usr/share/nginx/html
depends_on:
- api
networks:
- app-network
api:
build: ./api
ports:
- "3000:3000"
environment:
- NODE_ENV=production
networks:
- app-network
networks:
app-network:
driver: bridge
3. 准备前端文件
mkdir -p frontend/dist
# 将你的前端构建产物(如 dist/ 文件夹)复制到这里
cp -r /path/to/your/frontend/dist/* ./frontend/dist/
4. 准备 Nginx 配置
mkdir -p nginx/conf.d
cat > nginx/conf.d/default.conf <<EOF
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html;
try_files $uri $uri/ /index.html;
}
location /api {
proxy_pass http://api:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
EOF
5. 准备后端 Dockerfile
mkdir -p api
cat > api/Dockerfile <<EOF
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3000
CMD ["node", "index.js"]
EOF
6. 启动项目
docker-compose up -d
7. 查看运行状态
docker-compose ps
docker logs -f api # 查看后端日志
docker logs -f web # 查看前端日志
8. 访问测试
打开浏览器访问:http://<你的服务器IP>
五、安全与优化建议
| 项目 | 建议 |
|---|---|
| 防火墙 | 在腾讯云控制台开放必要端口(如 80, 443, 22) |
| 非 root 用户 | 创建普通用户并加入 docker 组,避免直接 root 操作 |
| 定期更新 | yum update docker-ce 或 apt upgrade docker-ce |
| 备份数据 | 重要数据挂载到宿主机目录或云硬盘,避免容器删除丢失 |
| 监控日志 | 使用 journalctl -u docker.service 或 ELK 栈集中管理日志 |
| HTTPS | 使用 Let’s Encrypt + Certbot 为 Nginx 配置 SSL 证书 |
六、常见问题排查
| 问题 | 解决方案 |
|---|---|
Permission denied 操作 Docker |
当前用户未加入 docker 组:usermod -aG docker $USER,然后重新登录 |
| 拉取镜像超时 | 配置阿里云镜像提速器(见上文) |
| 端口冲突 | 修改 docker-compose.yml 中的端口映射,如 "8080:80" |
| 容器无法访问外部网络 | 检查 Docker 网络模式,默认桥接通常正常;可尝试 --network host |
| 磁盘空间不足 | docker system prune -a 清理无用镜像和容器 |
✅ 总结流程:
- SSH 登录服务器 → 2. 安装 Docker & Compose → 3. 配置镜像提速 → 4. 编写
docker-compose.yml→ 5. 放置项目代码 → 6.docker-compose up -d→ 7. 访问测试
按照以上步骤,你可以在腾讯云轻量应用服务器上快速、稳定地部署任何基于 Docker 的项目。如有具体技术栈(如 Java/Spring Boot、Python/Django、MySQL 等),可提供进一步定制化的 docker-compose.yml 配置。
云服务器