下面是从零开始让你的Spring Boot项目跑在Linux服务器的完整攻略。
一、准备工作
1. 购买一台Linux服务器,获取root权限。
2. 安装Java环境,可以使用yum安装或手动下载安装。
二、打包Spring Boot项目
打包Spring Boot项目,生成可执行的jar包。使用以下命令进行打包:
mvn package
三、上传jar包到服务器
使用scp命令将生成的jar包上传至Linux服务器。假设上传至服务器的目录为/home/user,可以使用以下命令:
scp target/xxx.jar root@服务器IP地址:/home/user/
四、运行jar包
在Linux服务器上运行jar包,使用以下命令:
java -jar /home/user/xxx.jar
五、使用systemd服务管理工具
使用systemd管理工具来管理Spring Boot应用程序,使得它能够在后台运行,并随着Linux系统启动而自动启动。具体步骤如下:
1. 创建一个systemd服务文件,文件名为xxx.service,路径为/etc/systemd/system/。
2. 编辑该文件,在文件中添加以下内容:
[Unit]
Description=xxx spring boot service
[Service]
User=root
WorkingDirectory=/home/user/
ExecStart=/usr/bin/java -jar /home/user/xxx.jar
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
其中,Description为服务描述,User为服务执行用户,WorkingDirectory为启动jar包的目录,ExecStart为启动jar包的命令,SuccessExitStatus为需要标记为成功的退出代码,WantedBy为哪个系统运行级别会启用该服务。
3. 运行以下命令,使得新创建的服务在Linux系统启动时自动启动:
systemctl enable xxx.service
- 启动服务,并查看服务状态:
systemctl start xxx.service
systemctl status xxx.service
至此,你的Spring Boot项目已经成功跑在Linux服务器上了。
下面给出一个简单的示例:
示例一:将Spring Boot项目myapp打包成jar包,并上传至Linux服务器的/home/user目录中。
mvn package
scp target/myapp.jar root@服务器IP地址:/home/user/
然后,在Linux服务器上执行以下命令启动应用程序:
java -jar /home/user/myapp.jar
如果应用启动正常,可以使用Ctrl+C退出,然后使用systemd管理工具将应用程序作为一个服务来管理。(请参考前面的步骤四)
示例二:使用Nginx作为反向代理,将Spring Boot应用程序部署在服务器上。
1. 安装Nginx。
yum install nginx
- 在Nginx目录中创建一个新的server配置文件。
vim /etc/nginx/conf.d/myapp.conf
为了避免端口冲突,可以将端口设置为80。
server {
listen 80;
server_name 服务器IP地址;
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;
}
}
- 重新加载Nginx配置文件。
systemctl reload nginx
- 启动Spring Boot应用程序。
java -jar /home/user/myapp.jar --server.port=8080
现在,可以使用浏览器访问网站了,例如:http://服务器IP地址/。
希望以上攻略对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:从零开始让你的Spring Boot项目跑在Linux服务器 - Python技术站