Spring Boot部署到服务器
使用 Spring Boot 部署到不同的服务器是一个常见的任务。Spring Boot 可以通过多种方式进行部署。下面给出一些常见的部署方法
1. 打包为可执行 JAR 包并部署
Spring Boot 支持将应用程序打包为一个独立的 JAR 文件,这样可以在不同的服务器上运行。
步骤:
-
打包应用
在 Spring Boot 项目中,使用 Maven 或 Gradle 进行构建。对于 Maven,可以使用以下命令:
mvn clean package
-
将 JAR 文件复制到服务器
将生成的 JAR 文件(通常在target
目录下)复制到目标服务器上。 -
运行 JAR 文件
在服务器上运行 JAR 文件:java -jar my-spring-boot-app.jar
-
后台运行
为了确保应用在后台运行,可以使用nohup
或screen
工具:nohup java -jar my-spring-boot-app.jar &
2. 使用 Docker 部署
如果你希望跨不同的服务器运行应用,可以将 Spring Boot 应用容器化,使用 Docker 部署。
步骤:
-
编写 Dockerfile
在项目的根目录下创建一个Dockerfile
文件:FROM openjdk:8 COPY target/my-spring-boot-app.jar /app.jar # 暴露8080端口 EXPOSE 8080 ENTRYPOINT ["java", "-jar", "/app.jar"]
-
构建 Docker 镜像
使用以下命令构建 Docker 镜像:docker build -t my-spring-boot-app .
-
将镜像推送到 Docker Hub (这个步骤可以省略 直接本地启动容器)
如果需要在不同的服务器上运行,首先将镜像推送到 Docker Hub(或者私有 Docker Registry):docker push my-spring-boot-app
-
在目标服务器上运行 Docker 容器
在目标服务器上拉取并运行 Docker 镜像:docker pull my-spring-boot-app # 如果本地 这里可以省略 docker run -d -p 8080:8080 my-spring-boot-app