Linux服务器:部署springboot项目

1、确保服务器的JDK已经配置好

JDK需要是1.8以上的版本。
JDK下载+配置:https://blog.youkuaiyun.com/lena7/article/details/113828566
在这里插入图片描述

2、确保服务器已经安装mysql

查看mysql服务状态:# service mysqld status
在这里插入图片描述
如果没有安装自行安装。

3、数据库部署

使用数据库工具远程连接服务器:
注意数据库是否开启端口号,
在这里插入图片描述
打开数据库执行sql文件。

4、打包

注意:打包前检查项目中自己数据库的密码是否设置的是服务器密码!!!
在这里插入图片描述
检查该项目的端口号是否与服务器的端口冲突,同时检查服务器是否开放了该端口,阿里云服务器开放端口的步骤可以查看该链接:https://blog.youkuaiyun.com/lena7/article/details/113828480
打开IDEA,先进行clean,然后package。
在这里插入图片描述
只需要以下这个jar包:
在这里插入图片描述

5、上传jar包到服务器上

使用工具将jar包上传到Linux服务器上。
使用命令# nohup java -jar jar包名 &命令运行jar包。若想要记录日志,可以创建一个txt文件,然后使用# nohup java -jar jar包名 >日志文件 &运行jar包。
在这里插入图片描述
执行完命令之后,会返回一个数字,该数字是进程的PID。

6、检查

输入命令# ps -ef | grep java可以查看到该进程,即为启动状态。
(如果不成功,可以查看端口号是否启动、端口号是否被占用,是的话就杀死端口)
在这里插入图片描述
在浏览器上输入IP:端口号/页面即可成功访问到项目。

若想要关闭当前进程,使用命令# kill 进程PID即可

### 部署Spring Boot项目Linux虚拟机的步骤 在Linux虚拟机上部署Spring Boot项目,通常需要完成以下几部分工作:系统环境准备、项目打包、文件传输以及服务启动。以下是详细的说明: #### 1. 系统环境准备 确保Linux虚拟机上安装了必要的软件和依赖: - **Java运行环境**:Spring Boot项目需要Java运行时环境(JRE)或开发工具包(JDK)。推荐使用OpenJDK版本,例如OpenJDK 17[^3]。 - **Nginx(可选)**:如果需要通过Nginx进行反向代理和负载均衡,可以安装Nginx[^1]。 - **MySQL或其他数据库(可选)**:根据项目需求,可以选择是否安装数据库服务。 在Linux中可以通过以下命令安装OpenJDK: ```bash sudo apt update sudo apt install openjdk-17-jdk ``` 验证Java安装是否成功: ```bash java -version ``` #### 2. 项目打包 Spring Boot项目支持多种打包方式,最常见的是将项目打包为一个可执行的JAR文件。这种方式无需额外配置Tomcat等应用服务器[^3]。 在本地Windows环境中,打开项目的`pom.xml`文件,并确保以下配置存在: ```xml <packaging>jar</packaging> ``` 然后使用Maven进行打包: ```bash mvn clean package ``` 打包完成后,会在`target`目录下生成一个JAR文件。 #### 3. 文件传输 将生成的JAR文件从本地传输到Linux虚拟机上。常用的文件传输工具有: - **SCP**:通过命令行传输文件。 - **SFTP**:通过图形化工具(如FileZilla)传输文件。 使用SCP传输文件的命令示例: ```bash scp /path/to/your-app.jar user@linux-ip:/home/user/ ``` #### 4. 启动Spring Boot服务 登录到Linux虚拟机后,进入存放JAR文件的目录并启动服务: ```bash java -jar your-app.jar ``` 为了实现后台运行,可以结合`nohup`命令: ```bash nohup java -jar your-app.jar > app.log 2>&1 & ``` #### 5. 使用Docker容器化(可选) 如果希望以容器化的方式部署Spring Boot项目,可以参考以下Dockerfile[^4]: ```dockerfile # 使用官方OpenJDK 17镜像作为基础镜像 FROM openjdk:17-jdk-slim # 维护者信息 LABEL maintainer="dunkeng" # 设置时区 RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 将jar包复制到容器中 COPY your-app.jar /app.jar # 暴露端口 EXPOSE 8080 # 启动命令 ENTRYPOINT ["java","-jar","/app.jar"] ``` 构建Docker镜像并运行容器: ```bash docker build -t springboot-app . docker run -d --name=myapp -p 8080:8080 --restart=always springboot-app ``` #### 6. 配置Nginx(可选) 如果需要通过Nginx对外提供服务,可以在Nginx配置文件中添加反向代理规则: ```nginx server { listen 80; server_name your-domain.com; 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服务: ```bash sudo systemctl restart nginx ``` --- ### 注意事项 - 如果项目需要连接外部数据库,请确保数据库服务已正确配置,并更新项目的`application.properties`或`application.yml`文件中的数据库连接信息[^1]。 - 在生产环境中,建议使用日志管理工具(如Logstash)来监控服务日志[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值