个人开发者,Spring Boot 项目如何部署

今天给大家分享一下,作为个人开发者,Spring Boot 项目是如何部署的。

环境介绍

Linux

docker

docker-compose

目录结构

复制代码
erwin-windrunner
- backups
- data
- jars
- build-docker-compose.sh
- docker-compose.yml
- Dockerfile

文件

Dockerfile
复制代码
FROM openjdk:17-jdk-alpine
MAINTAINER Erwin Feng xfsy_2015@163.com

ENV active = 'dev'

ENV TZ=Asia/Shanghai

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

COPY erwin-windrunner-*.jar erwin-windrunner.jar
ENTRYPOINT ["sh", "-c", "java -jar erwin-windrunner.jar --spring.profiles.active=$active"]
docker-compose.yml
yaml 复制代码
version: "3"
services:
  # 服务名称
  erwin-windrunner:
    # Dockerfile所在目录(. 表示同级目录下)
    build: .
    # 镜像名称
    image: fengwenyi/erwin-windrunner
    # 容器名称
    container_name: erwin-windrunner
    restart: always
    # 端口
    ports:
      - "9090:9090"
    # 挂载
    volumes:
      - ./data/log:/data/log
      - ./data/file:/data/file
    environment:
      # 指定时区
      - TZ="Asia/Shanghai"
      - active=prod
build-docker-compose.sh
shell 复制代码
docker-compose down
docker-compose rm
mv *.jar backups/
cd jars
name=$(ls -lt *.jar|awk '{print $9}'|head -1)
cp $name ..
cd ..
docker-compose build
docker-compose up -d
docker-compose logs -f

操作

  1. 每次升级,我们只需要把打包好的 jar 文件上传到 jars 文件下。

    需要注意版本,每次都会取最大的。

  2. 执行 shell 命令:sh build-docker-compose.sh

相关推荐
QQ1__8115175158 分钟前
Spring boot名城小区物业管理系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】
前端·vue.js·spring boot
小码哥_常39 分钟前
解锁AI编程密码:程序员常用的10个AI提示词
后端
九转成圣1 小时前
Java 性能优化实战:如何将海量扁平数据高效转化为类目字典树?
java·开发语言·json
直奔標竿2 小时前
Java开发者AI转型第二十七课!Spring AI 个人知识库实战(六)——全栈闭环收官,解锁前端流式渲染终极技巧
java·开发语言·前端·人工智能·后端·spring
金銀銅鐵2 小时前
[java] 编译之后的记录类(Record Classes)长什么样子(上)
java·jvm·后端
uzong3 小时前
我研读了 500 个 Spring Boot 生产级代码库,90% 都犯了这 7 个致命错误
后端
野生技术架构师4 小时前
金三银四面试总结篇,汇总 Java 面试突击班后的面试小册
java·面试·职场和发展
xiaobaoyu4 小时前
ssm知识点梳理
后端
小袁拒绝摆烂4 小时前
多表关联大平层转JSON树形结构
java·json