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
相关推荐
YuePeng15 分钟前
别再让 AI 直接写 SQL 了:一个注解搞定十亿行数据的语义层
后端·github
半夜里咳嗽的狼21 分钟前
Go 1.25 的 WaitGroup.Go 省了两行代码,也补不上这三个并发边界
后端·go
山峰哥22 分钟前
数据库性能救星:Explain执行计划深度拆解
服务器·开发语言·数据库·sql·启发式算法
Lihua奏22 分钟前
身份验证:登录之后,服务器怎么一直认得你?
后端
XuCoder24 分钟前
Redis 缓存和 MySQL 数据不一致怎么办?双写一致性一次讲透
后端
程序员天天困29 分钟前
Arthas ognl 表达式从入门到实战:掌握在线调试最强的表达式引擎
java·jvm·后端
Escape1 小时前
为什么你的 AI 越聊越傻?从 Token 到 Agent,彻底搞懂 AI Agent的秘密㊙️
前端·人工智能·后端
IT_Octopus1 小时前
Spring Boot 中 ThreadLocal 请求上下文的完整生命周期
java·spring boot·spring
用户40966601317512 小时前
Lombok 你用对了吗?@Data 之外的 6 个隐藏神器
java·后端·代码规范
董员外2 小时前
RAG 系统进化论(二):Naive RAG,检索增强生成的最小闭环
前端·人工智能·后端