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
相关推荐
小猪佩奇TONY8 分钟前
Linux 内核学习(13) --- linux 内核并发与竞态
linux·服务器·学习
倔强的石头1068 分钟前
Linux 进程深度解析(四):环境变量 —— 进程的“环境 DNA”
linux·运维·服务器
sunflower_level221 分钟前
【ssh key】登陆云服务器,github的安全密码
服务器·ssh·github
rannn_11126 分钟前
【SQL题解】力扣高频 SQL 50题|DAY1
后端·sql·题解
IT_陈寒30 分钟前
JavaScript性能优化:7个V8引擎内部原理帮你减少90%内存泄漏的实战技巧
前端·人工智能·后端
苹果醋331 分钟前
java设计模式之责任链模式
java·运维·spring boot·mysql·nginx
m0_5348750532 分钟前
Ditto局域网同步功能实现宿主机和VMware虚拟机之间的复制粘贴共享
linux·运维·服务器
小韩博37 分钟前
小迪第40天:安全开发-JavaEE应用&SpringBoot框架&JWT身份鉴权&打包部署JAR&WAR
spring boot·安全·web安全·java-ee
JaguarJack38 分钟前
当遇见 CatchAdmin V5-模块化设计重新定义 Laravel 后台开发
后端·php
zbguolei39 分钟前
Windows平台下SRS实时视频服务器的搭建
服务器·windows·音视频