diff --git a/README.md b/README.md index ee451e1..e00c19b 100644 --- a/README.md +++ b/README.md @@ -96,12 +96,122 @@ src - 根据Employee中的角色信息更新User的角色 - 对于配送员,还会创建或更新DeliveryPerson记录 +## 本地开发与测试 + +### 环境配置 + +项目支持多种运行环境配置: + +1. **本地开发环境** (`local`) + - 端口: 8443 + - 数据库: 远程MySQL (与生产环境相同) + - SSL: 禁用 + - 日志级别: DEBUG + +2. **测试环境** (`test`) + - 端口: 8443 + - 数据库: H2内存数据库 + - SSL: 禁用 + - 日志级别: DEBUG + +3. **生产环境** (`prod`) + - 端口: 443 + - 数据库: 远程MySQL + - SSL: 启用 + - 日志级别: INFO + +### 本地运行方式 + +#### 方式一:IDE直接运行(推荐用于开发调试) + +1. 在IDE中打开[LightApplication.java](file:///E:/StudyProject/Light/src/main/java/com/light/delivery/LightApplication.java) +2. 添加运行参数: `-Dspring.profiles.active=local` +3. 直接运行main方法 + +#### 方式二:Maven命令运行 + +```bash +# 使用local配置文件运行 +mvn spring-boot:run -Dspring-boot.run.profiles=local + +# 或者使用test配置文件运行(使用内存数据库) +mvn spring-boot:run -Dspring-boot.run.profiles=test +``` + +#### 方式三:打包后运行 + +```bash +# 打包项目 +mvn clean package -DskipTests + +# 使用local配置运行 +java -jar target/light-delivery-1.0.0.jar --spring.profiles.active=local + +# 使用test配置运行 +java -jar target/light-delivery-1.0.0.jar --spring.profiles.active=test +``` + +### 运行Docker容器 + +```bash +# 构建本地Docker镜像 +build-local.bat + +# 运行容器 +docker run -d --name light-delivery -p 8443:8443 light-delivery-app +``` + ## 部署说明 -1. 确保安装了Java 17和Maven -2. 配置MySQL数据库 -3. 修改`application.properties`中的数据库连接信息 -4. 运行`mvn spring-boot:run`启动项目 +### 服务打包 + +使用Maven将项目打包为可执行JAR文件: + +```bash +# 清理并打包,跳过测试 +mvn clean package -DskipTests + +# 或者运行测试后打包 +mvn clean package +``` + +打包后的文件位于: `target/light-delivery-1.0.0.jar` + +### Docker镜像构建 + +项目支持多种Docker镜像构建方式: + +#### 方式一:使用Jib插件(推荐) + +```bash +# 构建Docker镜像到本地Docker守护进程 +mvn compile jib:dockerBuild + +# 构建Docker镜像到tar文件 +mvn compile jib:buildTar +``` + +#### 方式二:使用Dockerfile + +```bash +# 构建Docker镜像 +docker build -t light-delivery-app . +``` + +### 云端部署 + +使用提供的部署脚本将应用部署到云服务器: + +```bash +# Windows环境下运行 +deploy.bat +``` + +脚本将执行以下操作: +1. 构建Docker镜像 +2. 导出为tar文件 +3. 通过SCP上传到云服务器 +4. 在云服务器上加载镜像并运行容器 ## API接口 diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index ad78ebb..3c876c2 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -31,7 +31,7 @@ wx.api.code2session-url=https://api.weixin.qq.com/sns/jscode2session logging.level.com.light.delivery=INFO -jwt.secret=lightDeliveryProdSecretKey +jwt.secret=CRMO1KEF/YP07zoV8+X1F3/DfkvksgPUs6tdLRR8urWCEBPMEO+5nt50xRkRl8JBJursSnvv++qylsaz5zryuA== jwt.expiration=86400 management.endpoints.web.exposure.include=health,info