Update application.yml to disable resource mapping for improved SPA handling

This commit is contained in:
liumangmang
2026-02-04 11:16:01 +08:00
parent 7e6ebd18a5
commit 4558ef20c0
9 changed files with 258 additions and 0 deletions

48
docker/Dockerfile Normal file
View File

@@ -0,0 +1,48 @@
# ========== 阶段一:前端构建(国内 npm 源) ==========
FROM node:20-alpine AS frontend
# 使用国内 npm 镜像npmmirror
COPY docker/.npmrc /root/.npmrc
WORKDIR /app
COPY frontend/package.json frontend/package-lock.json ./
RUN npm ci --prefer-offline --no-audit
COPY frontend/ ./
RUN npm run build
# ========== 阶段二:后端构建(国内 Maven 源) ==========
FROM maven:3.9-eclipse-temurin-8-alpine AS backend
COPY docker/maven-settings.xml /root/.m2/settings.xml
WORKDIR /build
# 先复制 pom利用层缓存
COPY backend/pom.xml ./
RUN mvn dependency:go-offline -B -q
# 复制后端源码
COPY backend/src ./src
# 将前端打包结果放入 Spring Boot 静态资源目录
COPY --from=frontend /app/dist ./src/main/resources/static
RUN mvn package -DskipTests -B -q
# ========== 阶段三:运行(单容器,仅 Java ==========
FROM eclipse-temurin:8-jre-alpine
RUN apk add --no-cache tzdata \
&& cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo "Asia/Shanghai" > /etc/timezone
WORKDIR /app
COPY --from=backend /build/target/*.jar app.jar
ENV DATA_DIR=/app/data
RUN mkdir -p ${DATA_DIR}
EXPOSE 48080
ENTRYPOINT ["java", "-jar", "app.jar"]