Spring Boot部署到服务器

使用 Spring Boot 部署到不同的服务器是一个常见的任务。Spring Boot 可以通过多种方式进行部署。下面给出一些常见的部署方法

1. 打包为可执行 JAR 包并部署

Spring Boot 支持将应用程序打包为一个独立的 JAR 文件,这样可以在不同的服务器上运行。

步骤:
  1. 打包应用

    在 Spring Boot 项目中,使用 Maven 或 Gradle 进行构建。

    对于 Maven,可以使用以下命令:

    sh 复制代码
    mvn clean package
  2. 将 JAR 文件复制到服务器

    将生成的 JAR 文件(通常在 target 目录下)复制到目标服务器上。

  3. 运行 JAR 文件

    在服务器上运行 JAR 文件:

    sh 复制代码
    java -jar my-spring-boot-app.jar
  4. 后台运行

    为了确保应用在后台运行,可以使用 nohupscreen 工具:

    sh 复制代码
    nohup java -jar my-spring-boot-app.jar &

2. 使用 Docker 部署

如果你希望跨不同的服务器运行应用,可以将 Spring Boot 应用容器化,使用 Docker 部署。

步骤:
  1. 编写 Dockerfile

    在项目的根目录下创建一个 Dockerfile 文件:

    txt 复制代码
    FROM openjdk:8
    COPY target/my-spring-boot-app.jar /app.jar
    # 暴露8080端口
    EXPOSE 8080
    ENTRYPOINT ["java", "-jar", "/app.jar"]
  2. 构建 Docker 镜像

    使用以下命令构建 Docker 镜像:

    sh 复制代码
    docker build -t my-spring-boot-app .
  3. 将镜像推送到 Docker Hub (这个步骤可以省略 直接本地启动容器)

    如果需要在不同的服务器上运行,首先将镜像推送到 Docker Hub(或者私有 Docker Registry):

    sh 复制代码
    docker push my-spring-boot-app
  4. 在目标服务器上运行 Docker 容器

    在目标服务器上拉取并运行 Docker 镜像:

    sh 复制代码
    docker pull my-spring-boot-app  # 如果本地 这里可以省略
    docker run -d -p 8080:8080 my-spring-boot-app
相关推荐
z10_148 小时前
海外住宅ip怎么区分干净程度以及怎么选择海外住宅ip
服务器·网络·网络协议·tcp/ip
optimistic_chen9 小时前
【Java EE进阶 --- SpringBoot】统一功能处理
java·spring boot·java-ee·json·统一功能处理
IT_陈寒9 小时前
7个鲜为人知的JavaScript性能优化技巧,让你的网页加载速度提升50%
前端·人工智能·后端
几颗流星9 小时前
Rust 常用语法速记 - 迭代器
后端·rust
岸边的风9 小时前
FileRise 让文件管理变简单,搭配cpolar实现远程自由访问
服务器
清空mega9 小时前
从零开始搭建 flask 博客实验(4)
后端·python·flask
bcbnb9 小时前
iPhone HTTPS 抓包,从无法抓包到定位问题的流程(Charles/tcpdump/Wireshark/Sniffmaster)
后端
春生野草9 小时前
SpringBoot配置文件
java·数据库·spring boot
Data_Adventure10 小时前
TypeScript 开发者转向 Java:学习重点与思维迁移指南
后端
吴祖贤10 小时前
Spring AI 零基础入门:从踩坑到上手的完整指南
后端