首页 / 美国服务器 / 正文
springboot在服务器上部署

Time:2024年12月20日 Read:7 评论:42 作者:y21dr45

# 部署SpringBoot项目到服务器:详细指南

springboot在服务器上部署

## 前言

在现代的软件开发中,将Spring Boot项目部署到服务器是一个常见需求,本文将详细介绍如何将Spring Boot项目手动部署到服务器上,包括通过打成jar包或war包的方式进行部署,文章旨在为开发者提供清晰的指导,确保项目顺利运行于生产环境。

## 一、准备工作

### 1.选择合适的云服务器提供商

在选择云服务器提供商时,需要考虑以下因素:

- **地理位置**:选择靠近用户所在地区的服务器,可以提供更低的延迟和更好的性能。

- **服务器配置**:根据项目的需求,选择合适的计算资源,如CPU、内存、存储等。

- **可用性和可靠性**:云服务器提供商通常会提供SLA(服务级别协议),用于描述服务器的可用性和可靠性,选择一个具有高可用性和可靠性的云服务器,可以确保项目的稳定运行。

- **价格**:云服务器提供商通常会根据不同的配置和服务收费,需要根据项目的预算来选择合适的云服务器。

### 2.创建云服务器实例

一旦选择了合适的云服务器提供商,下一步就是创建云服务器实例,每个云服务器提供商都有自己的管理控制台或命令行工具,可以使用这些工具来创建云服务器实例,在创建云服务器实例时,需要设置以下参数:

- **实例类型**:选择合适的实例类型,包括CPU、内存、存储等配置。

- **操作系统**:选择合适的操作系统,如Linux、Windows等。

- **网络配置**:设置网络参数,包括VPC(虚拟私有云)和子网等。

- **安全组**:设置安全组规则,用于控制进出云服务器的流量。

- **密钥对**:创建密钥对,用于登录云服务器。

创建云服务器实例后,可以通过管理控制台或命令行工具获取云服务器的公网IP地址和登录凭证(如用户名和密码或密钥对),以便后续的部署和管理操作。

## 二、配置云服务器环境

### 1.安装Java运行时环境

Spring Boot是基于Java的框架,因此需要在云服务器上安装Java运行时环境,具体的安装方式取决于所选择的操作系统,例如在Ubuntu上可以使用以下命令安装OpenJDK:

```bash

sudo apt update

sudo apt install openjdk-11-jre

```

安装完成后,可以通过命令`java -version`验证Java是否安装成功。

### 2.安装数据库服务器

如果Spring Boot项目需要使用数据库,还需要在云服务器上安装数据库服务器,常见的数据库服务器包括MySQL、PostgreSQL、MongoDB等,可以根据项目的需求选择合适的数据库,以下是安装MySQL的示例:

```bash

sudo apt update

sudo apt install mysql-server

```

安装完成后,可以通过命令`mysql --version`验证MySQL是否安装成功,在安装数据库服务器时,需要设置安全规则,限制数据库服务器只能从特定的IP地址或端口访问,以增强数据库的安全性。

### 3.安装其他依赖软件

根据Spring Boot项目的需求,还可能需要安装其他依赖软件,如Nginx、Redis、Elasticsearch等,这些软件可以提供额外的功能和性能优化,需要根据项目的实际情况进行安装和配置。

### 4.配置防火墙

为了增强云服务器的安全性,建议配置防火墙规则,限制进出云服务器的流量,可以使用云服务器提供商的安全组或防火墙功能,设置相应的规则,例如只允许特定的端口或协议通过。

## 三、部署Spring Boot项目

### 1.上传项目文件

可以通过多种方式将Spring Boot项目文件上传到云服务器,如使用FTP、SCP、SFTP等工具进行文件传输,或者通过云服务器提供商的管理控制台上传文件,确保项目文件上传到云服务器的指定目录。

### 2.运行Spring Boot项目

在云服务器上运行Spring Boot项目,可以使用Java运行命令或者使用项目构建工具(如Maven或Gradle)进行打包和运行,以下是使用Maven打包并运行Spring Boot项目的示例:

```bash

mvn clean package

java -jar target/your-project.jar

```

`your-project.jar`是项目的可执行JAR文件,可以根据实际项目的名称进行替换。

### 3.配置项目参数

在运行Spring Boot项目时,可以通过命令行参数或配置文件来配置项目的参数,可以通过命令行参数指定项目的端口号、数据库连接信息等:

```bash

java -jar your-project.jar --server.port=8080 --spring.datasource.url=jdbc:mysql://localhost:3306/mydb

```

或者可以通过在项目的配置文件(如application.properties或application.yml)中设置参数:

```yaml

server:

port: 8080

spring:

datasource:

url: jdbc:mysql://localhost:3306/mydb

```

根据项目的需求,可以配置不同的参数,如数据库连接信息、日志级别、缓存配置等。

## 四、通过jar包部署

### 1.项目打包成jar包

在IDE中打开项目,通常使用Maven或Gradle作为构建工具,以下是使用Maven打包项目的步骤:

- 确保项目的`pom.xml`文件中配置了正确的依赖和插件。

- 在IDE中打开终端或命令提示符,导航到项目根目录。

- 运行以下命令进行打包:

```sh

mvn clean package

```

该命令会在项目的目标目录(通常是`target`目录)下生成一个可执行的jar文件。

### 2.拷贝jar包到服务器预发布目录

可以使用FTP、SCP或其他文件传输方式将打包好的jar文件上传到服务器的目标目录,使用SCP命令上传文件:

```sh

scp /path/to/local/your-project.jar username@server_ip:/path/to/remote/directory

```

上传成功后,可以在服务器上验证文件是否存在:

```sh

ls /path/to/remote/directory

```

### 3.运行jar包启动项目

在服务器上,通过以下命令启动Spring Boot应用:

```sh

nohup java -jar /path/to/remote/directory/your-project.jar > log.out 2>&1 &

```

此命令会以后台进程的方式运行jar包,并将输出日志记录到`log.out`文件中,使用`nohup`命令确保进程在你退出终端后继续运行,`&`符号表示在后台运行。

### 4.停止jar包的方法

- 直接关闭cmd窗口(不推荐,可能导致数据丢失)。

- 找到正在运行的Java进程的PID,然后使用`kill`命令终止进程:

```sh

ps -ef | grep your-project.jar

kill -9 PID

```

PID`是Java进程的进程ID。

## 五、通过war包部署(依赖外部Tomcat)

### 1.修改项目启动类

为了使Spring Boot项目能够打成war包并部署到外部Tomcat服务器,需要在项目的启动类上添加一些注解:

```java

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

import org.springframework.boot.builder.SpringApplicationBuilder;

import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

import org.springframework.context.annotation.ComponentScan;

import org.springframework.web.WebApplicationInitializer;

@SpringBootApplication

public class YourProjectName extends SpringBootServletInitializer {

@Override

protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {

return application.sources(YourProjectName.class);

}

```

这个类继承自`SpringBootServletInitializer`并重写`configure`方法,以便Tomcat可以找到Spring Boot应用的启动类。

### 2.pom.xml引入maven-war包依赖并修改packaging类型

在项目的`pom.xml`文件中引入`maven-war-plugin`依赖,并将打包类型修改为war:

```xml

org.springframework.bootspring-boot-maven-pluginorg.apache.maven.pluginsmaven-war-plugin3.2.5false

```

确保`pom.xml`文件中有以下配置:

```xml

war

```

重新加载Maven项目使更改生效。

### 3.自定义Tomcat配置(可选)

如果需要自定义Tomcat的一些配置,比如调整内存设置或修改连接器配置,可以按照以下步骤操作:

- 在项目的`src/main/webapp`目录下创建一个名为`WEB-INF`的文件夹。

排行榜
关于我们
「好主机」服务器测评网专注于为用户提供专业、真实的服务器评测与高性价比推荐。我们通过硬核性能测试、稳定性追踪及用户真实评价,帮助企业和个人用户快速找到最适合的服务器解决方案。无论是云服务器、物理服务器还是企业级服务器,好主机都是您值得信赖的选购指南!
快捷菜单1
服务器测评
VPS测评
VPS测评
服务器资讯
服务器资讯
扫码关注
鲁ICP备2022041413号-1