在腾讯云轻量应用服务器(Tencent Cloud Lighthouse)上部署 Java 项目是一个常见需求。以下是详细的步骤指南,帮助你从零开始完成部署。
✅ 一、准备工作
-
购买并登录轻量服务器
- 登录 腾讯云控制台
- 购买一台 轻量应用服务器(Lighthouse),推荐选择:
- 操作系统:Ubuntu 20.04 / 22.04 或 CentOS 7/8
- 镜像类型:纯净镜像(不带预装环境)
- 地域和带宽根据需要选择
-
获取服务器信息
- 记下公网 IP 地址
- 获取登录密码或 SSH 密钥
-
本地连接工具
- 使用
SSH工具连接服务器:ssh root@你的公网IP - Windows 用户可使用 PuTTY、Xshell、FinalShell 等工具。
- 使用
✅ 二、安装 Java 环境(JDK)
Java 项目运行依赖 JDK。
方法 1:Ubuntu 安装 OpenJDK(推荐)
# 更新包管理器
sudo apt update
# 安装 OpenJDK 11(或 17)
sudo apt install openjdk-11-jdk -y
# 验证安装
java -version
javac -version
方法 2:CentOS 安装 OpenJDK
sudo yum update -y
sudo yum install java-11-openjdk-devel -y
java -version
如果你需要 Oracle JDK,可以手动下载
.tar.gz包并配置环境变量。
✅ 三、上传 Java 项目(通常是 JAR 包)
通常 Spring Boot 项目打包成一个可执行的 jar 文件。
步骤:
-
在本地使用 Maven 打包:
mvn clean package得到类似
target/myapp-0.0.1.jar -
将 JAR 包上传到服务器:
- 使用
scp命令:scp myapp-0.0.1.jar root@你的IP:/root/ - 或使用 FinalShell、WinSCP 图形化工具拖拽上传。
- 使用
✅ 四、运行 Java 项目
# 进入目录
cd /root
# 后台运行 JAR(推荐使用 nohup)
nohup java -jar myapp-0.0.1.jar > app.log 2>&1 &
# 查看是否运行成功
ps aux | grep java
tail -f app.log
💡 参数说明:
nohup:防止终端关闭后进程终止> app.log:输出日志到文件&:后台运行
✅ 五、配置防火墙和安全组
确保外部能访问你的服务端口(如 8080)。
1. 腾讯云控制台设置安全组
- 进入轻量服务器控制台 → 找到你的实例 → 安全组
- 添加规则:允许 自定义 TCP 端口 8080(或你的应用端口)从
0.0.0.0/0访问
2. 服务器内部防火墙(如 Ubuntu 的 ufw)
sudo ufw allow 8080
✅ 六、(可选)使用 Nginx 反向X_X
如果你希望用域名访问或使用 80 端口,建议安装 Nginx。
安装 Nginx
sudo apt install nginx -y # Ubuntu
配置反向X_X
编辑配置文件:
sudo nano /etc/nginx/sites-available/default
添加如下内容(假设 Java 服务运行在 8080 端口):
server {
listen 80;
server_name your-domain.com; # 或者你的公网IP
location / {
proxy_pass http://127.0.0.1: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;
}
}
重启 Nginx:
sudo systemctl restart nginx
现在你可以通过 http://你的IP 直接访问 Java 项目。
✅ 七、(进阶)使用 systemd 管理服务(推荐生产使用)
创建系统服务,让 Java 应用开机自启。
sudo nano /etc/systemd/system/myapp.service
内容如下:
[Unit]
Description=My Java Application
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/bin/java -jar /root/myapp-0.0.1.jar
Restart=always
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
启用并启动服务:
sudo systemctl daemon-reload
sudo systemctl enable myapp
sudo systemctl start myapp
查看状态:
sudo systemctl status myapp
✅ 八、绑定域名(可选)
- 在腾讯云注册或解析一个域名
- 添加 A 记录指向你的轻量服务器公网 IP
- 在 Nginx 中配置
server_name yourdomain.com; - 可进一步申请免费 SSL 证书(使用 Let’s Encrypt)
📌 总结流程
| 步骤 | 内容 |
|---|---|
| 1 | 购买并登录轻量服务器 |
| 2 | 安装 JDK |
| 3 | 上传 JAR 包 |
| 4 | 后台运行 Java 程序 |
| 5 | 配置安全组开放端口 |
| 6 | (可选)Nginx 反向X_X |
| 7 | (可选)systemd 服务管理 |
| 8 | (可选)绑定域名 + HTTPS |
❓常见问题
- 无法访问? 检查安全组、防火墙、Java 是否在监听
0.0.0.0:8080 - 日志在哪? 查看
app.log或journalctl -u myapp - 内存不足? 轻量服务器建议至少 2GB 内存运行 Java 项目
如果你提供更具体的项目类型(如 Spring Boot、普通 Java Web、是否用数据库等),我可以给出更定制化的部署方案。欢迎继续提问!
CLOUD技术博