如何在腾讯云轻量服务器上部署Spring Boot项目?

在腾讯云轻量应用服务器上部署 Spring Boot 项目是一个常见且实用的操作。以下是详细的步骤指南,帮助你顺利完成部署。


🛠️ 前提准备

  1. 已购买腾讯云轻量应用服务器(Lighthouse)

    • 推荐系统:Ubuntu 20.04 / CentOS 7
    • 至少 2GB 内存(推荐 2GB 或以上)
  2. 本地开发环境

    • 已打包好 Spring Boot 的 JAR 文件(如 myapp.jar
    • 使用 Maven/Gradle 构建:mvn clean packagegradle build
  3. 远程连接工具

    • 如:Xshell、PuTTY(Windows)、Terminal(Mac/Linux)

✅ 步骤一:登录轻量服务器

  1. 登录 腾讯云控制台
  2. 找到你的轻量服务器实例,获取公网 IP 和登录密码(或密钥)
  3. 使用 SSH 登录:
ssh root@你的公网IP
# 输入密码

✅ 步骤二:安装 Java 环境

Spring Boot 需要 Java 运行环境(JRE/JDK)。

Ubuntu 示例:

# 更新包管理器
sudo apt update

# 安装 OpenJDK 17(推荐 LTS 版本)
sudo apt install openjdk-17-jdk -y

# 验证安装
java -version

输出应类似:

openjdk version "17.0.8" 2023-07-18

CentOS 示例:

sudo yum install java-17-openjdk-devel -y
java -version

✅ 步骤三:上传 Spring Boot JAR 包

将本地的 target/myapp.jar 上传到服务器。

方法 1:使用 scp 命令(推荐)

scp target/myapp.jar root@你的公网IP:/root/myapp.jar

方法 2:使用 SFTP 工具(如 WinSCP、FileZilla)

将文件拖拽上传到服务器任意目录,比如 /root/


✅ 步骤四:运行 Spring Boot 项目

进入服务器后执行:

cd /root
java -jar myapp.jar

此时应用默认会在 8080 端口启动。

⚠️ 注意:这样前台运行,关闭终端会中断程序。


✅ 步骤五:后台运行(使用 nohup 或 systemd)

方式 1:使用 nohup 后台运行

nohup java -jar myapp.jar > app.log 2>&1 &
  • > app.log:输出日志到文件
  • 2>&1:错误输出也重定向
  • &:后台运行

查看日志:

tail -f app.log

停止服务:

ps aux | grep myapp.jar
kill -9 <PID>

方式 2:使用 systemd(推荐用于生产)

创建服务文件:

sudo nano /etc/systemd/system/myapp.service

写入以下内容(根据实际情况修改路径和用户):

[Unit]
Description=My Spring Boot Application
After=syslog.target

[Service]
User=root
ExecStart=/usr/bin/java -jar /root/myapp.jar
Restart=always
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

保存并启用服务:

sudo systemctl daemon-reload
sudo systemctl enable myapp
sudo systemctl start myapp

常用命令:

sudo systemctl status myapp    # 查看状态
sudo systemctl stop myapp     # 停止
sudo systemctl restart myapp  # 重启
sudo systemctl logs myapp     # 查看日志(需配合 journald)

✅ 步骤六:配置防火墙和安全组

确保服务器允许外部访问你的端口(如 8080)。

1. 腾讯云控制台设置安全组

  • 进入轻量服务器控制台 → 实例详情 → 安全组
  • 添加规则:允许 TCP 端口 8080(或你项目使用的端口),源 IP 可设为 0.0.0.0/0

2. 服务器本地防火墙(可选)

Ubuntu 使用 ufw

sudo ufw allow 8080

CentOS 使用 firewalld

sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload

✅ 步骤七:访问应用

浏览器访问:

http://你的公网IP:8080

如果看到你的 Spring Boot 页面,说明部署成功!


✅ 可选优化

  1. 使用 Nginx 反向(支持域名、HTTPS、80端口)

    server {
        listen 80;
        server_name yourdomain.com;
    
        location / {
            proxy_pass http://localhost:8080;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }
  2. 申请免费 SSL 证书(Let’s Encrypt)

  3. 自动部署脚本(结合 Git + Jenkins/GitHub Actions)


❌ 常见问题排查

问题 解决方法
访问不了 8080 检查安全组、防火墙、应用是否真在运行
Java not found 确认 JDK 是否正确安装,java -version
权限不足 使用 sudo 或检查文件权限
端口被占用 netstat -tulnp | grep 8080 查看并 kill 占用进程

✅ 总结

部署流程总结:

  1. 购买轻量服务器 → 2. 安装 Java → 3. 上传 JAR → 4. 后台运行 → 5. 开放端口 → 6. 访问测试

只要按部就班操作,Spring Boot 项目即可稳定运行在腾讯云轻量服务器上。


如果你需要,我也可以提供一个完整的自动化部署脚本或 Docker 部署方案。欢迎继续提问!