first commit
30
.github/workflows/maven.yml
vendored
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
# This workflow will build a Java project with Maven, and cache/restore any dependencies to improve the workflow execution time
|
||||||
|
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
|
||||||
|
|
||||||
|
name: Java CI with Maven
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ master ]
|
||||||
|
# pull_request:
|
||||||
|
# branches: [ master ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
java: [ '8', '11', '17' ]
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Set up JDK ${{ matrix.Java }}
|
||||||
|
uses: actions/setup-java@v2
|
||||||
|
with:
|
||||||
|
java-version: ${{ matrix.java }}
|
||||||
|
distribution: 'temurin'
|
||||||
|
cache: maven
|
||||||
|
- name: Build with Maven
|
||||||
|
run: mvn -B package --file pom.xml -Dmaven.test.skip=true
|
||||||
51
.github/workflows/zoe-ui-admin.yml
vendored
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
name: zoe-ui-admin CI
|
||||||
|
|
||||||
|
# 在master分支发生push事件时触发。
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ master ]
|
||||||
|
# pull_request:
|
||||||
|
# branches: [ master ]
|
||||||
|
env: # 设置环境变量
|
||||||
|
TZ: Asia/Shanghai # 时区(设置时区可使页面中的`最近更新时间`使用时区时间)
|
||||||
|
WORK_DIR: zoe-ui-admin #工作目录
|
||||||
|
|
||||||
|
defaults:
|
||||||
|
run:
|
||||||
|
shell: bash
|
||||||
|
working-directory: zoe-ui-admin
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build: # 自定义名称
|
||||||
|
runs-on: ubuntu-latest # 运行在虚拟机环境ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
node_version: [14.x, 16.x]
|
||||||
|
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout # 步骤1
|
||||||
|
uses: actions/checkout@v2 # 使用的动作。格式:userName/repoName。作用:检出仓库,获取源码。 官方actions库:https://github.com/actions
|
||||||
|
|
||||||
|
- name: Install pnpm
|
||||||
|
uses: pnpm/action-setup@v2.0.1
|
||||||
|
with:
|
||||||
|
version: 6.15.1
|
||||||
|
|
||||||
|
- name: Set node version to ${{ matrix.node_version }}
|
||||||
|
uses: actions/setup-node@v2
|
||||||
|
with:
|
||||||
|
node-version: ${{ matrix.node_version }}
|
||||||
|
cache: "yarn"
|
||||||
|
cache-dependency-path: zoe-ui-admin/yarn.lock
|
||||||
|
|
||||||
|
- name: Install deps
|
||||||
|
run: node --version && yarn --version && yarn install
|
||||||
|
|
||||||
|
- name: Build
|
||||||
|
run: yarn build:prod
|
||||||
|
|
||||||
|
# 查看 workflow 的文档来获取更多信息
|
||||||
|
# @see https://github.com/crazy-max/ghaction-github-pages
|
||||||
|
|
||||||
54
.gitignore
vendored
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
######################################################################
|
||||||
|
# Build Tools
|
||||||
|
|
||||||
|
.gradle
|
||||||
|
/build/
|
||||||
|
!gradle/wrapper/gradle-wrapper.jar
|
||||||
|
|
||||||
|
target/
|
||||||
|
!.mvn/wrapper/maven-wrapper.jar
|
||||||
|
|
||||||
|
.flattened-pom.xml
|
||||||
|
|
||||||
|
######################################################################
|
||||||
|
# IDE
|
||||||
|
|
||||||
|
### STS ###
|
||||||
|
.apt_generated
|
||||||
|
.classpath
|
||||||
|
.factorypath
|
||||||
|
.project
|
||||||
|
.settings
|
||||||
|
.springBeans
|
||||||
|
|
||||||
|
### IntelliJ IDEA ###
|
||||||
|
.idea
|
||||||
|
*.iws
|
||||||
|
*.iml
|
||||||
|
*.ipr
|
||||||
|
|
||||||
|
### NetBeans ###
|
||||||
|
nbproject/private/
|
||||||
|
build/*
|
||||||
|
nbbuild/
|
||||||
|
dist/
|
||||||
|
nbdist/
|
||||||
|
.nb-gradle/
|
||||||
|
|
||||||
|
######################################################################
|
||||||
|
# Others
|
||||||
|
*.log
|
||||||
|
*.xml.versionsBackup
|
||||||
|
*.swp
|
||||||
|
|
||||||
|
!*/build/*.java
|
||||||
|
!*/build/*.html
|
||||||
|
!*/build/*.xml
|
||||||
|
|
||||||
|
### JRebel ###
|
||||||
|
rebel.xml
|
||||||
|
|
||||||
|
application-my.yaml
|
||||||
|
|
||||||
|
/zoe-ui-app/unpackage/
|
||||||
|
**/.DS_Store
|
||||||
BIN
.image/Java监控.jpg
Normal file
|
After Width: | Height: | Size: 112 KiB |
BIN
.image/MySQL.jpg
Normal file
|
After Width: | Height: | Size: 142 KiB |
BIN
.image/OA请假-列表.jpg
Normal file
|
After Width: | Height: | Size: 152 KiB |
BIN
.image/OA请假-发起.jpg
Normal file
|
After Width: | Height: | Size: 68 KiB |
BIN
.image/OA请假-详情.jpg
Normal file
|
After Width: | Height: | Size: 65 KiB |
BIN
.image/Redis.jpg
Normal file
|
After Width: | Height: | Size: 95 KiB |
BIN
.image/admin-uniapp/01.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
.image/admin-uniapp/02.png
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
.image/admin-uniapp/03.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
.image/admin-uniapp/04.png
Normal file
|
After Width: | Height: | Size: 9.7 KiB |
BIN
.image/admin-uniapp/05.png
Normal file
|
After Width: | Height: | Size: 56 KiB |
BIN
.image/admin-uniapp/06.png
Normal file
|
After Width: | Height: | Size: 8.6 KiB |
BIN
.image/admin-uniapp/07.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
.image/admin-uniapp/08.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
.image/admin-uniapp/09.png
Normal file
|
After Width: | Height: | Size: 7.0 KiB |
BIN
.image/common/ai-feature.png
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
.image/common/ai-preview.gif
Normal file
|
After Width: | Height: | Size: 348 KiB |
BIN
.image/common/bpm-feature.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
.image/common/crm-feature.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
.image/common/erp-feature.png
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
.image/common/infra-feature.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
.image/common/mall-feature.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
.image/common/mall-preview.png
Normal file
|
After Width: | Height: | Size: 204 KiB |
BIN
.image/common/project-vs.png
Normal file
|
After Width: | Height: | Size: 139 KiB |
BIN
.image/common/ruoyi-vue-pro-architecture.png
Normal file
|
After Width: | Height: | Size: 69 KiB |
BIN
.image/common/ruoyi-vue-pro-biz.png
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
.image/common/system-feature.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
.image/common/zoe-cloud-architecture.png
Normal file
|
After Width: | Height: | Size: 201 KiB |
BIN
.image/common/zoe-roadmap.png
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
.image/个人中心.jpg
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
.image/代码生成.jpg
Normal file
|
After Width: | Height: | Size: 130 KiB |
BIN
.image/令牌管理.jpg
Normal file
|
After Width: | Height: | Size: 89 KiB |
BIN
.image/任务列表-审批.jpg
Normal file
|
After Width: | Height: | Size: 89 KiB |
BIN
.image/任务列表-已办.jpg
Normal file
|
After Width: | Height: | Size: 160 KiB |
BIN
.image/任务列表-待办.jpg
Normal file
|
After Width: | Height: | Size: 150 KiB |
BIN
.image/任务日志.jpg
Normal file
|
After Width: | Height: | Size: 124 KiB |
BIN
.image/商户信息.jpg
Normal file
|
After Width: | Height: | Size: 83 KiB |
BIN
.image/在线用户.jpg
Normal file
|
After Width: | Height: | Size: 73 KiB |
BIN
.image/大屏设计器-列表.jpg
Normal file
|
After Width: | Height: | Size: 53 KiB |
BIN
.image/大屏设计器-编辑.jpg
Normal file
|
After Width: | Height: | Size: 109 KiB |
BIN
.image/大屏设计器-预览.jpg
Normal file
|
After Width: | Height: | Size: 69 KiB |
BIN
.image/字典数据.jpg
Normal file
|
After Width: | Height: | Size: 78 KiB |
BIN
.image/字典类型.jpg
Normal file
|
After Width: | Height: | Size: 126 KiB |
BIN
.image/定时任务.jpg
Normal file
|
After Width: | Height: | Size: 74 KiB |
BIN
.image/岗位管理.jpg
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
.image/工作流设计器-bpmn.jpg
Normal file
|
After Width: | Height: | Size: 177 KiB |
BIN
.image/工作流设计器-simple.jpg
Normal file
|
After Width: | Height: | Size: 126 KiB |
BIN
.image/应用信息-列表.jpg
Normal file
|
After Width: | Height: | Size: 93 KiB |
BIN
.image/应用信息-编辑.jpg
Normal file
|
After Width: | Height: | Size: 93 KiB |
BIN
.image/应用管理.jpg
Normal file
|
After Width: | Height: | Size: 55 KiB |
BIN
.image/我的流程-列表.jpg
Normal file
|
After Width: | Height: | Size: 176 KiB |
BIN
.image/我的流程-发起.jpg
Normal file
|
After Width: | Height: | Size: 91 KiB |
BIN
.image/我的流程-详情.jpg
Normal file
|
After Width: | Height: | Size: 87 KiB |
BIN
.image/报表设计器-图形报表.jpg
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
.image/报表设计器-打印设计.jpg
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
.image/报表设计器-数据报表.jpg
Normal file
|
After Width: | Height: | Size: 41 KiB |
BIN
.image/操作日志.jpg
Normal file
|
After Width: | Height: | Size: 98 KiB |
BIN
.image/支付订单.jpg
Normal file
|
After Width: | Height: | Size: 208 KiB |
BIN
.image/敏感词.jpg
Normal file
|
After Width: | Height: | Size: 47 KiB |
BIN
.image/数据库文档.jpg
Normal file
|
After Width: | Height: | Size: 97 KiB |
BIN
.image/文件管理.jpg
Normal file
|
After Width: | Height: | Size: 74 KiB |
BIN
.image/文件管理2.jpg
Normal file
|
After Width: | Height: | Size: 114 KiB |
BIN
.image/文件配置.jpg
Normal file
|
After Width: | Height: | Size: 116 KiB |
BIN
.image/日志中心.jpg
Normal file
|
After Width: | Height: | Size: 84 KiB |
BIN
.image/流程模型-列表.jpg
Normal file
|
After Width: | Height: | Size: 173 KiB |
BIN
.image/流程模型-定义.jpg
Normal file
|
After Width: | Height: | Size: 125 KiB |
BIN
.image/流程模型-设计.jpg
Normal file
|
After Width: | Height: | Size: 125 KiB |
BIN
.image/流程表单.jpg
Normal file
|
After Width: | Height: | Size: 148 KiB |
BIN
.image/生成效果.jpg
Normal file
|
After Width: | Height: | Size: 128 KiB |
BIN
.image/用户分组.jpg
Normal file
|
After Width: | Height: | Size: 82 KiB |
BIN
.image/用户管理.jpg
Normal file
|
After Width: | Height: | Size: 112 KiB |
BIN
.image/登录.jpg
Normal file
|
After Width: | Height: | Size: 93 KiB |
BIN
.image/登录日志.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
.image/短信日志.jpg
Normal file
|
After Width: | Height: | Size: 41 KiB |
BIN
.image/短信模板.jpg
Normal file
|
After Width: | Height: | Size: 248 KiB |
BIN
.image/短信渠道.jpg
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
.image/租户套餐.png
Normal file
|
After Width: | Height: | Size: 96 KiB |
BIN
.image/租户管理.jpg
Normal file
|
After Width: | Height: | Size: 115 KiB |
BIN
.image/系统接口.jpg
Normal file
|
After Width: | Height: | Size: 91 KiB |
BIN
.image/菜单管理.jpg
Normal file
|
After Width: | Height: | Size: 129 KiB |
BIN
.image/表单构建.jpg
Normal file
|
After Width: | Height: | Size: 102 KiB |
BIN
.image/角色管理.jpg
Normal file
|
After Width: | Height: | Size: 85 KiB |
BIN
.image/访问日志.jpg
Normal file
|
After Width: | Height: | Size: 73 KiB |
BIN
.image/退款订单.jpg
Normal file
|
After Width: | Height: | Size: 92 KiB |
BIN
.image/通知公告.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
.image/部门管理.jpg
Normal file
|
After Width: | Height: | Size: 109 KiB |
BIN
.image/配置管理.jpg
Normal file
|
After Width: | Height: | Size: 89 KiB |
BIN
.image/链路追踪.jpg
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
.image/错误日志.jpg
Normal file
|
After Width: | Height: | Size: 110 KiB |
BIN
.image/错误码管理.jpg
Normal file
|
After Width: | Height: | Size: 131 KiB |
BIN
.image/首页.jpg
Normal file
|
After Width: | Height: | Size: 62 KiB |
4
lombok.config
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
config.stopBubbling = true
|
||||||
|
lombok.tostring.callsuper=CALL
|
||||||
|
lombok.equalsandhashcode.callsuper=CALL
|
||||||
|
lombok.accessors.chain=true
|
||||||
171
pom.xml
Normal file
@ -0,0 +1,171 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<groupId>com.qqchen.boot</groupId>
|
||||||
|
<artifactId>zoe</artifactId>
|
||||||
|
<version>${revision}</version>
|
||||||
|
<packaging>pom</packaging>
|
||||||
|
<modules>
|
||||||
|
<module>zoe-dependencies</module>
|
||||||
|
<module>zoe-framework</module>
|
||||||
|
<!-- Server 主项目 -->
|
||||||
|
<module>zoe-server</module>
|
||||||
|
<!-- 各种 module 拓展 -->
|
||||||
|
<module>zoe-module-system</module>
|
||||||
|
<module>zoe-module-infra</module>
|
||||||
|
<module>zoe-module-member</module>
|
||||||
|
<module>zoe-module-bpm</module>
|
||||||
|
<!-- <module>zoe-module-report</module>-->
|
||||||
|
<!-- <module>zoe-module-mp</module>-->
|
||||||
|
<!-- <module>zoe-module-pay</module>-->
|
||||||
|
<!-- <module>zoe-module-mall</module>-->
|
||||||
|
<!-- <module>zoe-module-crm</module>-->
|
||||||
|
<!-- <module>zoe-module-erp</module>-->
|
||||||
|
<!-- <module>zoe-module-ai</module>-->
|
||||||
|
<!-- <module>zoe-module-iot</module>-->
|
||||||
|
</modules>
|
||||||
|
|
||||||
|
<name>${project.artifactId}</name>
|
||||||
|
<description>芋道项目基础脚手架</description>
|
||||||
|
<url>https://github.com/YunaiV/ruoyi-vue-pro</url>
|
||||||
|
|
||||||
|
<properties>
|
||||||
|
<revision>2.4.2-SNAPSHOT</revision>
|
||||||
|
<!-- Maven 相关 -->
|
||||||
|
<java.version>17</java.version>
|
||||||
|
<maven.compiler.source>${java.version}</maven.compiler.source>
|
||||||
|
<maven.compiler.target>${java.version}</maven.compiler.target>
|
||||||
|
<maven-surefire-plugin.version>3.2.2</maven-surefire-plugin.version>
|
||||||
|
<maven-compiler-plugin.version>3.13.0</maven-compiler-plugin.version>
|
||||||
|
<flatten-maven-plugin.version>1.6.0</flatten-maven-plugin.version>
|
||||||
|
<!-- 看看咋放到 bom 里 -->
|
||||||
|
<lombok.version>1.18.36</lombok.version>
|
||||||
|
<spring.boot.version>3.4.1</spring.boot.version>
|
||||||
|
<mapstruct.version>1.6.3</mapstruct.version>
|
||||||
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
</properties>
|
||||||
|
|
||||||
|
<dependencyManagement>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.qqchen.boot</groupId>
|
||||||
|
<artifactId>zoe-dependencies</artifactId>
|
||||||
|
<version>${revision}</version>
|
||||||
|
<type>pom</type>
|
||||||
|
<scope>import</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</dependencyManagement>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<pluginManagement>
|
||||||
|
<plugins>
|
||||||
|
<!-- maven-surefire-plugin 插件,用于运行单元测试。 -->
|
||||||
|
<!-- 注意,需要使用 3.0.X+,因为要支持 Junit 5 版本 -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-surefire-plugin</artifactId>
|
||||||
|
<version>${maven-surefire-plugin.version}</version>
|
||||||
|
</plugin>
|
||||||
|
<!-- maven-compiler-plugin 插件,解决 spring-boot-configuration-processor + Lombok + MapStruct 组合 -->
|
||||||
|
<!-- https://stackoverflow.com/questions/33483697/re-run-spring-boot-configuration-annotation-processor-to-update-generated-metada -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
|
<version>${maven-compiler-plugin.version}</version>
|
||||||
|
<configuration>
|
||||||
|
<annotationProcessorPaths>
|
||||||
|
<path>
|
||||||
|
<groupId>org.springframework.boot</groupId>
|
||||||
|
<artifactId>spring-boot-configuration-processor</artifactId>
|
||||||
|
<version>${spring.boot.version}</version>
|
||||||
|
</path>
|
||||||
|
<path>
|
||||||
|
<groupId>org.projectlombok</groupId>
|
||||||
|
<artifactId>lombok</artifactId>
|
||||||
|
<version>${lombok.version}</version>
|
||||||
|
</path>
|
||||||
|
<path>
|
||||||
|
<groupId>org.mapstruct</groupId>
|
||||||
|
<artifactId>mapstruct-processor</artifactId>
|
||||||
|
<version>${mapstruct.version}</version>
|
||||||
|
</path>
|
||||||
|
</annotationProcessorPaths>
|
||||||
|
<!-- 编译参数写在 arg 内,解决 Spring Boot 3.2 的 Parameter Name Discovery 问题 -->
|
||||||
|
<debug>false</debug>
|
||||||
|
<compilerArgs>
|
||||||
|
<arg>-parameters</arg>
|
||||||
|
</compilerArgs>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.codehaus.mojo</groupId>
|
||||||
|
<artifactId>flatten-maven-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</pluginManagement>
|
||||||
|
|
||||||
|
<plugins>
|
||||||
|
<!-- 统一 revision 版本 -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.codehaus.mojo</groupId>
|
||||||
|
<artifactId>flatten-maven-plugin</artifactId>
|
||||||
|
<version>${flatten-maven-plugin.version}</version>
|
||||||
|
<configuration>
|
||||||
|
<flattenMode>oss</flattenMode>
|
||||||
|
<updatePomFile>true</updatePomFile>
|
||||||
|
</configuration>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<goals>
|
||||||
|
<goal>flatten</goal>
|
||||||
|
</goals>
|
||||||
|
<id>flatten</id>
|
||||||
|
<phase>process-resources</phase>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<goals>
|
||||||
|
<goal>clean</goal>
|
||||||
|
</goals>
|
||||||
|
<id>flatten.clean</id>
|
||||||
|
<phase>clean</phase>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
|
||||||
|
<!-- 使用 huawei / aliyun 的 Maven 源,提升下载速度 -->
|
||||||
|
<repositories>
|
||||||
|
<repository>
|
||||||
|
<id>huaweicloud</id>
|
||||||
|
<name>huawei</name>
|
||||||
|
<url>https://mirrors.huaweicloud.com/repository/maven/</url>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>aliyunmaven</id>
|
||||||
|
<name>aliyun</name>
|
||||||
|
<url>https://maven.aliyun.com/repository/public</url>
|
||||||
|
</repository>
|
||||||
|
|
||||||
|
<repository>
|
||||||
|
<id>spring-milestones</id>
|
||||||
|
<name>Spring Milestones</name>
|
||||||
|
<url>https://repo.spring.io/milestone</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</snapshots>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>spring-snapshots</id>
|
||||||
|
<name>Spring Snapshots</name>
|
||||||
|
<url>https://repo.spring.io/snapshot</url>
|
||||||
|
<releases>
|
||||||
|
<enabled>false</enabled>
|
||||||
|
</releases>
|
||||||
|
</repository>
|
||||||
|
</repositories>
|
||||||
|
|
||||||
|
</project>
|
||||||
49
script/docker/Docker-HOWTO.md
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
# Docker Build & Up
|
||||||
|
|
||||||
|
目标: 快速部署体验系统,帮助了解系统之间的依赖关系。
|
||||||
|
依赖:docker compose v2,删除`name: zoe-system`,降低`version`版本为`3.3`以下,支持`docker-compose`。
|
||||||
|
|
||||||
|
## 功能文件列表
|
||||||
|
|
||||||
|
```text
|
||||||
|
.
|
||||||
|
├── Docker-HOWTO.md
|
||||||
|
├── docker-compose.yml
|
||||||
|
├── docker.env <-- 提供docker-compose环境变量配置
|
||||||
|
├── zoe-server
|
||||||
|
│ └── Dockerfile
|
||||||
|
└── zoe-ui-admin
|
||||||
|
├── .dockerignore
|
||||||
|
├── Dockerfile
|
||||||
|
└── nginx.conf <-- 提供基础配置,gzip压缩、api转发
|
||||||
|
```
|
||||||
|
|
||||||
|
## 构建 jar 包
|
||||||
|
|
||||||
|
```shell
|
||||||
|
# 创建maven缓存volume
|
||||||
|
docker volume create --name zoe-maven-repo
|
||||||
|
|
||||||
|
docker run -it --rm --name zoe-maven \
|
||||||
|
-v zoe-maven-repo:/root/.m2 \
|
||||||
|
-v $PWD:/usr/src/mymaven \
|
||||||
|
-w /usr/src/mymaven \
|
||||||
|
maven mvn clean install package '-Dmaven.test.skip=true'
|
||||||
|
```
|
||||||
|
|
||||||
|
## 构建启动服务
|
||||||
|
|
||||||
|
```shell
|
||||||
|
docker compose --env-file docker.env up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
首次运行会自动构建容器。可以通过`docker compose build [service]`来手动构建所有或某个docker镜像
|
||||||
|
|
||||||
|
`--env-file docker.env`为可选参数,只是展示了通过`.env`文件配置容器启动的环境变量,`docker-compose.yml`本身已经提供足够的默认参数来正常运行系统。
|
||||||
|
|
||||||
|
## 服务器的宿主机端口映射
|
||||||
|
|
||||||
|
- admin ui: http://localhost:8080
|
||||||
|
- api server: http://localhost:48080
|
||||||
|
- mysql: root/123456, port: 3306
|
||||||
|
- redis: port: 6379
|
||||||
84
script/docker/docker-compose.yml
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
version: "3.4"
|
||||||
|
|
||||||
|
name: zoe-system
|
||||||
|
|
||||||
|
services:
|
||||||
|
mysql:
|
||||||
|
container_name: zoe-mysql
|
||||||
|
image: mysql:8
|
||||||
|
restart: unless-stopped
|
||||||
|
tty: true
|
||||||
|
ports:
|
||||||
|
- "3306:3306"
|
||||||
|
environment:
|
||||||
|
MYSQL_DATABASE: ${MYSQL_DATABASE:-ruoyi-vue-pro}
|
||||||
|
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-123456}
|
||||||
|
volumes:
|
||||||
|
- mysql:/var/lib/mysql/
|
||||||
|
- ./sql/mysql/ruoyi-vue-pro.sql:/docker-entrypoint-initdb.d/ruoyi-vue-pro.sql:ro
|
||||||
|
|
||||||
|
redis:
|
||||||
|
container_name: zoe-redis
|
||||||
|
image: redis:6-alpine
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "6379:6379"
|
||||||
|
volumes:
|
||||||
|
- redis:/data
|
||||||
|
|
||||||
|
server:
|
||||||
|
container_name: zoe-server
|
||||||
|
build:
|
||||||
|
context: ./zoe-server/
|
||||||
|
image: zoe-server
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "48080:48080"
|
||||||
|
environment:
|
||||||
|
# https://github.com/polovyivan/docker-pass-configs-to-container
|
||||||
|
SPRING_PROFILES_ACTIVE: local
|
||||||
|
JAVA_OPTS:
|
||||||
|
${JAVA_OPTS:-
|
||||||
|
-Xms512m
|
||||||
|
-Xmx512m
|
||||||
|
-Djava.security.egd=file:/dev/./urandom
|
||||||
|
}
|
||||||
|
ARGS:
|
||||||
|
--spring.datasource.dynamic.datasource.master.url=${MASTER_DATASOURCE_URL:-jdbc:mysql://zoe-mysql:3306/ruoyi-vue-pro?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true}
|
||||||
|
--spring.datasource.dynamic.datasource.master.username=${MASTER_DATASOURCE_USERNAME:-root}
|
||||||
|
--spring.datasource.dynamic.datasource.master.password=${MASTER_DATASOURCE_PASSWORD:-123456}
|
||||||
|
--spring.datasource.dynamic.datasource.slave.url=${SLAVE_DATASOURCE_URL:-jdbc:mysql://zoe-mysql:3306/ruoyi-vue-pro?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true}
|
||||||
|
--spring.datasource.dynamic.datasource.slave.username=${SLAVE_DATASOURCE_USERNAME:-root}
|
||||||
|
--spring.datasource.dynamic.datasource.slave.password=${SLAVE_DATASOURCE_PASSWORD:-123456}
|
||||||
|
--spring.data.redis.host=${REDIS_HOST:-zoe-redis}
|
||||||
|
depends_on:
|
||||||
|
- mysql
|
||||||
|
- redis
|
||||||
|
|
||||||
|
admin:
|
||||||
|
container_name: zoe-admin
|
||||||
|
build:
|
||||||
|
context: ./zoe-ui-admin
|
||||||
|
args:
|
||||||
|
NODE_ENV:
|
||||||
|
ENV=${NODE_ENV:-production}
|
||||||
|
PUBLIC_PATH=${PUBLIC_PATH:-/}
|
||||||
|
VUE_APP_TITLE=${VUE_APP_TITLE:-DevOps管理系统}
|
||||||
|
VUE_APP_BASE_API=${VUE_APP_BASE_API:-/prod-api}
|
||||||
|
VUE_APP_APP_NAME=${VUE_APP_APP_NAME:-/}
|
||||||
|
VUE_APP_TENANT_ENABLE=${VUE_APP_TENANT_ENABLE:-true}
|
||||||
|
VUE_APP_CAPTCHA_ENABLE=${VUE_APP_CAPTCHA_ENABLE:-true}
|
||||||
|
VUE_APP_DOC_ENABLE=${VUE_APP_DOC_ENABLE:-true}
|
||||||
|
VUE_APP_BAIDU_CODE=${VUE_APP_BAIDU_CODE:-fadc1bd5db1a1d6f581df60a1807f8ab}
|
||||||
|
image: zoe-admin
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "8080:80"
|
||||||
|
depends_on:
|
||||||
|
- server
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
mysql:
|
||||||
|
driver: local
|
||||||
|
redis:
|
||||||
|
driver: local
|
||||||
25
script/docker/docker.env
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
## mysql
|
||||||
|
MYSQL_DATABASE=ruoyi-vue-pro
|
||||||
|
MYSQL_ROOT_PASSWORD=123456
|
||||||
|
|
||||||
|
## server
|
||||||
|
JAVA_OPTS=-Xms512m -Xmx512m -Djava.security.egd=file:/dev/./urandom
|
||||||
|
|
||||||
|
MASTER_DATASOURCE_URL=jdbc:mysql://zoe-mysql:3306/${MYSQL_DATABASE}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
|
||||||
|
MASTER_DATASOURCE_USERNAME=root
|
||||||
|
MASTER_DATASOURCE_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
||||||
|
SLAVE_DATASOURCE_URL=${MASTER_DATASOURCE_URL}
|
||||||
|
SLAVE_DATASOURCE_USERNAME=${MASTER_DATASOURCE_USERNAME}
|
||||||
|
SLAVE_DATASOURCE_PASSWORD=${MASTER_DATASOURCE_PASSWORD}
|
||||||
|
REDIS_HOST=zoe-redis
|
||||||
|
|
||||||
|
## admin
|
||||||
|
NODE_ENV=production
|
||||||
|
PUBLIC_PATH=/
|
||||||
|
VUE_APP_TITLE=DevOps管理系统
|
||||||
|
VUE_APP_BASE_API=/prod-api
|
||||||
|
VUE_APP_APP_NAME=/
|
||||||
|
VUE_APP_TENANT_ENABLE=true
|
||||||
|
VUE_APP_CAPTCHA_ENABLE=true
|
||||||
|
VUE_APP_DOC_ENABLE=true
|
||||||
|
VUE_APP_BAIDU_CODE=fadc1bd5db1a1d6f581df60a1807f8ab
|
||||||
20
script/idea/http-client.env.json
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"local": {
|
||||||
|
"baseUrl": "http://127.0.0.1:48080/admin-api",
|
||||||
|
"token": "test1",
|
||||||
|
"adminTenantId": "1",
|
||||||
|
|
||||||
|
"appApi": "http://127.0.0.1:48080/app-api",
|
||||||
|
"appToken": "test247",
|
||||||
|
"appTenantId": "1"
|
||||||
|
},
|
||||||
|
"gateway": {
|
||||||
|
"baseUrl": "http://127.0.0.1:8888/admin-api",
|
||||||
|
"token": "test1",
|
||||||
|
"adminTenantId": "1",
|
||||||
|
|
||||||
|
"appApi": "http://127.0.0.1:8888/app-api",
|
||||||
|
"appToken": "test1",
|
||||||
|
"appTenantId": "1"
|
||||||
|
}
|
||||||
|
}
|
||||||