Docker 分阶段构建 Spring Boot 容器镜像
Docker Spring Boot Java About 794 wordsDockerfile
如果是JDK 25则使用maven:3.9-eclipse-temurin-25即可。
# ---------- 构建阶段 ----------
FROM maven:3.9-eclipse-temurin-21 AS build
WORKDIR /app
# 先只复制 pom.xml 下载依赖:pom 不变时这一层会走缓存,构建更快
COPY pom.xml .
RUN mvn -B -q dependency:go-offline
COPY src ./src
RUN mvn -B -q package -DskipTests
# ---------- 运行阶段 ----------
FROM eclipse-temurin:21-jre
WORKDIR /app
# 不用 root 运行
RUN useradd -r -u 1001 spring
USER spring
COPY --from=build /app/target/*.jar app.jar
EXPOSE 8080
ENV JAVA_TOOL_OPTIONS="-XX:MaxRAMPercentage=75"
ENTRYPOINT ["java", "-jar", "app.jar"]
.dockerignore
target/
.git/
.idea/
.vscode/
*.iml
429 Too Many Request 错误
如果构建出现429错误时,需要换镜像源,以AWS为例,可以换为:
FROM public.ecr.aws/docker/library/maven:3.9-eclipse-temurin-25 AS build
FROM public.ecr.aws/docker/library/eclipse-temurin:25-jre
Views: 6 · Posted: 2026-11-04
———         Thanks for Reading         ———
Give me a Star, Thanks:)
https://github.com/fendoudebb/LiteNote扫描下方二维码关注公众号和小程序↓↓↓
Loading...