云服务器怎么部署两个项目?

在云服务器上部署两个项目,常见的做法是根据项目的类型(如Web应用、API服务等)选择合适的方式进行部署。以下是几种常见场景和方法:


一、前提条件

  • 已有一台云服务器(如阿里云ECS、腾讯云CVM、AWS EC2等)
  • 安装了操作系统(如 CentOS、Ubuntu 等)
  • 安装了必要的运行环境(如 Nginx、Apache、Tomcat、Docker、Node.js、Java、Python 等)

二、部署两个项目的常见方式

方法一:使用不同端口部署两个项目

示例:

  • 项目 A:监听 3000 端口
  • 项目 B:监听 4000 端口

操作步骤:

  1. 启动项目 A:node appA.js(假设使用 Node.js,监听3000端口)
  2. 启动项目 B:node appB.js(监听4000端口)
  3. 在安全组中开放这两个端口(3000 和 4000)
  4. 访问方式:
    • 项目 A:http://your-server-ip:3000
    • 项目 B:http://your-server-ip:4000

✅ 优点:简单快捷
❌ 缺点:需要暴露多个端口,不利于域名访问


方法二:使用 Nginx 反向 + 不同域名/路径

场景:

  • 你有两个域名或子域名:
    • a.example.com → 项目 A
    • b.example.com → 项目 B

或者使用同一域名下的不同路径:

  • example.com/a → 项目 A
  • example.com/b → 项目 B

步骤:

  1. 部署项目 A 和 B 到不同的本地端口(如3000和4000)
  2. 安装并配置 Nginx
  3. 修改 Nginx 配置文件(如 /etc/nginx/conf.d/projects.conf):
server {
    listen 80;
    server_name a.example.com;

    location / {
        proxy_pass http://localhost:3000;
    }
}

server {
    listen 80;
    server_name b.example.com;

    location / {
        proxy_pass http://localhost:4000;
    }
}
  1. 重启 Nginx:

    sudo systemctl restart nginx
  2. 域名解析到服务器 IP

✅ 优点:统一入口、方便管理、利于SEO和用户访问
✅ 推荐用于生产环境


方法三:使用 Docker 部署两个项目(推荐)

示例:

使用 Docker Compose 同时运行两个容器

# docker-compose.yml
version: '3'
services:
  project-a:
    image: your-project-a
    ports:
      - "3000:3000"
    container_name: project-a

  project-b:
    image: your-project-b
    ports:
      - "4000:4000"
    container_name: project-b

然后运行:

docker-compose up -d

再配合 Nginx 反向即可实现统一域名访问。

✅ 优点:隔离性强、便于扩展、易于维护
✅ 推荐用于多项目部署


三、其他注意事项

事项 说明
安全组 要确保对应端口已放行(如80、443、3000、4000等)
进程守护 使用 pm2(Node.js)、systemd 或 Docker 来保证服务不挂
HTTPS 可以用 Let’s Encrypt + Certbot 给域名添加 SSL 证书
日志管理 建议记录日志并定期清理

四、总结

方法 是否推荐 适用场景
不同端口直接访问 测试环境快速搭建
Nginx 反向 ✅✅ 生产环境、正式网站
Docker 部署 ✅✅✅ 多项目、复杂依赖、微服务架构

如果你能告诉我具体的项目类型(比如:两个 Node.js 项目?一个 Java 一个 Python?),我可以给你更详细的部署方案。欢迎补充!

未经允许不得转载:云计算HECS » 云服务器怎么部署两个项目?