个人开发者,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

相关推荐
芒果披萨7 分钟前
sql存储过程
java·开发语言·数据库
yaoxin52112313 分钟前
368. Java IO API - 基本文件属性
java·开发语言·python
_日拱一卒18 分钟前
LeetCode:最小覆盖字串
java·数据结构·算法·leetcode·职场和发展
禾小西22 分钟前
性能测试后的瓶颈定位与调优:自下而上找问题,自上而下解难题
java·测试工具
建军啊26 分钟前
java审计进阶
java·开发语言·python
2401_8896269228 分钟前
Java流程控制与方法全解析
java·开发语言
TlYf NTLE29 分钟前
Spring Boot spring-boot-maven-plugin 参数配置详解
spring boot·后端·maven
花千树-01030 分钟前
5分钟用 Java 构建你的第一个 AI 应用
java·人工智能·spring boot·langchain·aigc·ai编程
皮卡丘love大米42 分钟前
【避坑实录】MongoDB 8.0 Windows 服务安装报错 2186 / PowerShell sc 失效 完美解决
后端
pedestrian_h1 小时前
Java单例模式回顾
java·单例模式·设计模式