在腾讯云轻量应用服务器(Lighthouse)上配置 Java 后端,通常包括环境搭建、项目部署、服务管理和安全配置等步骤。以下是完整且实用的操作流程:
一、前置准备
-
购买并登录轻量服务器
- 选择 CentOS / Ubuntu 系统(推荐 Ubuntu 22.04 LTS 或 CentOS 7+)
- 安装 JDK(后续步骤中会说明)
- 确保开放必要端口(如 8080、22、3306 等)
-
本地打包 Java 项目
- 使用 Maven/Gradle 将项目打包为
jar文件(如app.jar) - 建议打包为可执行 JAR:
java -jar app.jar --spring.profiles.active=prod
- 使用 Maven/Gradle 将项目打包为
二、上传项目到服务器
方法一:使用 SCP/SFTP(推荐)
# 本地终端操作
scp app.jar root@<服务器公网IP>:/root/
方法二:通过轻量控制台“文件管理”上传
- 登录腾讯云控制台 → 轻量应用服务器 → 文件管理
- 直接拖拽上传
app.jar
三、安装 Java 运行环境
Ubuntu 示例:
sudo apt update
sudo apt install openjdk-17-jdk -y
java -version # 验证安装
CentOS 示例:
sudo yum install java-17-openjdk-devel -y
java -version
✅ 推荐使用 OpenJDK 17(Spring Boot 3.x 要求),也可根据项目需求选择 JDK 8/11/17/21
四、部署与运行 Java 应用
方案 A:简单启动(适合测试)
cd /root
nohup java -jar app.jar --server.port=8080 > app.log 2>&1 &
- 查看日志:
tail -f app.log - 停止服务:
pkill -f app.jar
方案 B:使用 Systemd 管理(生产推荐)
创建服务文件 /etc/systemd/system/myapp.service:
[Unit]
Description=My Java Application
After=syslog.target network.target
[Service]
User=root
WorkingDirectory=/root
ExecStart=/usr/bin/java -jar app.jar --server.port=8080
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
启用并启动服务:
sudo systemctl daemon-reload
sudo systemctl enable myapp
sudo systemctl start myapp
sudo systemctl status myapp
五、配置防火墙与安全组
1. 轻量服务器防火墙(内置)
# Ubuntu: ufw
sudo ufw allow 8080/tcp
sudo ufw enable
# CentOS: firewalld
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
2. 腾讯云控制台安全组
- 登录 腾讯云控制台
- 进入「轻量应用服务器」→ 点击实例 → 「网络」→「安全组」
- 添加入方向规则:
- 协议:TCP
- 端口:8080(或你配置的端口)
- 来源:
0.0.0.0/0(生产环境建议限制 IP)
六、反向X_X(可选但推荐)
使用 Nginx 做反向X_X,实现 HTTPS、域名访问、负载均衡等:
安装 Nginx
sudo apt install nginx -y # Ubuntu
# 或
sudo yum install nginx -y # CentOS
配置 Nginx 站点(/etc/nginx/sites-available/myapp)
server {
listen 80;
server_name your-domain.com; # 替换为你的域名
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
启用站点:
sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
🔐 如需 HTTPS,可使用 Let’s Encrypt 自动申请证书(配合 Certbot)
七、监控与日志管理(进阶)
- 使用
journalctl -u myapp查看 systemd 日志 - 安装
pm2或supervisor实现进程守护(可选) - 接入腾讯云云监控(CloudMonitor)设置 CPU/内存告警
八、最佳实践建议
| 项目 | 建议 |
|---|---|
| 环境隔离 | 使用 Docker 容器化部署(更灵活、易迁移) |
| 数据库连接 | 避免硬编码密码,使用环境变量或密钥管理服务 |
| 多环境支持 | 通过 --spring.profiles.active=dev/prod 区分配置 |
| 备份策略 | 定期备份数据库和配置文件至对象存储(COS) |
| 安全加固 | 关闭 SSH 密码登录,改用密钥;限制 root 远程登录 |
附:Docker 快速部署(可选)
FROM openjdk:17-jdk-slim
COPY app.jar /app.jar
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "/app.jar"]
构建并运行:
docker build -t my-java-app .
docker run -d -p 8080:8080 --name myapp my-java-app
通过以上步骤,你就可以在腾讯云轻量服务器上稳定运行 Java 后端服务。如有具体框架(如 Spring Boot、Quarkus)或数据库(MySQL、Redis)集成需求,可进一步补充细节,我会提供针对性配置方案。
CLOUD技术博