走啊走
加油

阿里云服务器部署2套springboot项目?

服务器价格表

在阿里云服务器上部署两套 Spring Boot 项目是完全可行的,以下是详细的部署步骤和建议:


✅ 前提条件

  1. 已有一台阿里云 ECS 实例(Linux 系统,如 CentOS、Ubuntu)
  2. Java 环境已安装(JDK 8 或以上)
  3. 两套 Spring Boot 项目已打包为 jar 文件
  4. 开放对应端口(如 8080、8081)

🛠️ 部署步骤

第一步:准备环境

1. 登录 ECS 服务器

ssh root@你的ECS公网IP

2. 安装 JDK(如果未安装)

# 查看是否已安装
java -version

# 如果没有,安装 OpenJDK
sudo yum install java-1.8.0-openjdk -y   # CentOS/RedHat
# 或
sudo apt install openjdk-8-jdk -y        # Ubuntu/Debian

第二步:上传两个 Spring Boot 项目

将两个打包好的 jar 文件上传到服务器,比如:

  • project-a.jar(运行在 8080 端口)
  • project-b.jar(运行在 8081 端口)

使用 scp 命令上传:

scp project-a.jar root@你的IP:/root/app/
scp project-b.jar root@你的IP:/root/app/

或使用 FTP 工具(如 Xftp、WinSCP)上传。


第三步:配置不同端口(确保不冲突)

确保两个项目的 application.ymlapplication.properties 中使用的端口不同:

项目 A(application.yml):

server:
  port: 8080

项目 B(application.yml):

server:
  port: 8081

⚠️ 打包前确认端口不冲突!


第四步:启动两个项目(后台运行)

使用 nohup + & 让程序在后台运行。

启动项目 A:

cd /root/app
nohup java -jar project-a.jar > a.log 2>&1 &

启动项目 B:

nohup java -jar project-b.jar > b.log 2>&1 &

第五步:配置安全组(阿里云控制台)

登录 阿里云控制台 → 云服务器 ECS → 安全组 → 配置规则

添加入方向规则,允许以下端口:

  • 8080(项目 A)
  • 8081(项目 B)
  • 80(可选,用于 Nginx 反向X_X)

协议类型:TCP
授权对象:0.0.0.0/0(或限制特定 IP)


第六步:验证服务是否正常

在浏览器访问:

  • http://你的IP:8080
  • http://你的IP:8081

如果能看到接口返回或页面,说明部署成功。


🔁 进阶优化建议

✅ 使用 Nginx 反向X_X(推荐)

避免暴露端口,统一通过 80/443 访问。

示例 Nginx 配置:

server {
    listen 80;
    server_name a.yourdomain.com;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

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

    location / {
        proxy_pass http://127.0.0.1:8081;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

然后绑定域名即可。


✅ 使用 systemctl 管理服务(更稳定)

创建系统服务文件,例如 /etc/systemd/system/project-a.service

[Unit]
Description=Project A Spring Boot App
After=syslog.target

[Service]
User=root
ExecStart=/usr/bin/java -jar /root/app/project-a.jar
Restart=always

[Install]
WantedBy=multi-user.target

启用并启动:

sudo systemctl daemon-reexec
sudo systemctl enable project-a.service
sudo systemctl start project-a

同理配置 project-b.service


✅ 日志管理

定期清理日志,或使用 logback 配置日志滚动。


❌ 常见问题排查

问题 解决方案
无法访问端口 检查安全组和防火墙(firewall-cmdufw
端口被占用 netstat -tuln | grep 8080 查看占用进程
内存不足 升级 ECS 规格或设置 JVM 参数 -Xms512m -Xmx1024m
项目启动失败 查看日志 tail -f nohup.outjournalctl -u xxx

✅ 总结

你可以在一台阿里云服务器上轻松部署多个 Spring Boot 项目,关键点如下:

  • 确保每个项目使用不同端口
  • 正确配置阿里云安全组
  • 使用 nohupsystemctl 后台运行
  • 推荐使用 Nginx 做反向X_X和负载均衡

如果你提供具体需求(如是否需要域名、HTTPS、数据库等),我可以给出更定制化的部署方案。