feat: 搭建后端多租户名片服务

- 初始化 Spring Boot 多模块工程与通用基础能力

- 增加租户、组织、用户、名片、文件、统计等业务模块

- 补充数据库迁移脚本与基础测试
This commit is contained in:
2026-03-20 12:43:21 +08:00
parent 1a2a078c0f
commit 9ef50288e9
95 changed files with 6722 additions and 0 deletions

42
backend/Dockerfile Normal file
View File

@@ -0,0 +1,42 @@
# syntax=docker/dockerfile:1.7
FROM --platform=${BUILDPLATFORM} maven:3.9.9-eclipse-temurin-21 AS builder
WORKDIR /build
COPY backend/pom.xml ./pom.xml
COPY backend/easycard-common/pom.xml ./easycard-common/pom.xml
COPY backend/easycard-module-system/pom.xml ./easycard-module-system/pom.xml
COPY backend/easycard-module-tenant/pom.xml ./easycard-module-tenant/pom.xml
COPY backend/easycard-module-org/pom.xml ./easycard-module-org/pom.xml
COPY backend/easycard-module-user/pom.xml ./easycard-module-user/pom.xml
COPY backend/easycard-module-card/pom.xml ./easycard-module-card/pom.xml
COPY backend/easycard-module-file/pom.xml ./easycard-module-file/pom.xml
COPY backend/easycard-module-stat/pom.xml ./easycard-module-stat/pom.xml
COPY backend/easycard-boot/pom.xml ./easycard-boot/pom.xml
RUN mvn -q -DskipTests dependency:go-offline
COPY backend/. .
RUN mvn -q -DskipTests -pl easycard-boot -am clean package \
&& cp /build/easycard-boot/target/easycard-boot-0.1.0-SNAPSHOT.jar /tmp/app.jar \
&& rm -rf /tmp/manifest-check \
&& mkdir -p /tmp/manifest-check \
&& cd /tmp/manifest-check \
&& jar xf /tmp/app.jar META-INF/MANIFEST.MF \
&& grep -q "Main-Class: org.springframework.boot.loader.launch.JarLauncher" META-INF/MANIFEST.MF \
&& grep -q "Start-Class: com.easycard.boot.EasycardBootApplication" META-INF/MANIFEST.MF
FROM --platform=${TARGETPLATFORM} eclipse-temurin:21-jre
WORKDIR /app
ENV TZ=Asia/Shanghai
ENV JAVA_OPTS=""
COPY --from=builder /tmp/app.jar /app/app.jar
EXPOSE 8112
ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar /app/app.jar"]