奋斗
努力

腾讯云轻量应用服务器如何安装Docker并部署项目?

云计算

在腾讯云轻量应用服务器(Lighthouse)上安装 Docker 并部署项目,是一个标准化且高效的操作流程。以下是详细的步骤指南,涵盖从环境准备到项目部署的全过程。


一、前置条件

  1. 登录腾讯云平台

    • 进入 腾讯云控制台
    • 找到你的轻量应用服务器实例,记录 公网 IP 地址 和 用户名/密码(或 SSH 私钥)。
  2. 连接服务器

    • 使用终端(Linux/macOS)或 PuTTY/Xshell(Windows)通过 SSH 连接服务器:
      ssh root@<你的服务器IP>
    • 首次登录可能需要确认指纹,输入 yes 并回车。
  3. 更新系统(推荐)

    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

📌 建议配置阿里云镜像提速器(提升拉取速度):

  1. 登录 阿里云容器镜像服务
  2. 获取专属提速器地址
  3. 创建 /etc/docker/daemon.json:
    {
     "registry-mirrors": ["https://<你的提速器地址>.mirror.aliyuncs.com"]
    }
  4. 重启 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 清理无用镜像和容器

✅ 总结流程:

  1. 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 配置。

未经允许不得转载:云服务器 » 腾讯云轻量应用服务器如何安装Docker并部署项目?