37 lines
1.0 KiB
Docker
37 lines
1.0 KiB
Docker
# 构建阶段
|
|
# 构建阶段
|
|
FROM maven:3.9-eclipse-temurin-17 AS builder
|
|
WORKDIR /app
|
|
COPY pom.xml .
|
|
COPY src ./src
|
|
|
|
# 1. 创建 settings.xml 使用阿里云镜像 (加速 Maven 构建)
|
|
RUN echo '<?xml version="1.0" encoding="UTF-8"?>\
|
|
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"\
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\
|
|
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">\
|
|
<mirrors>\
|
|
<mirror>\
|
|
<id>aliyunmaven</id>\
|
|
<mirrorOf>*</mirrorOf>\
|
|
<name>阿里云公共仓库</name>\
|
|
<url>https://maven.aliyun.com/repository/public</url>\
|
|
</mirror>\
|
|
</mirrors>\
|
|
</settings>' > /usr/share/maven/conf/settings.xml
|
|
|
|
# 跳过测试打包
|
|
RUN mvn clean package -DskipTests
|
|
|
|
# 运行阶段
|
|
FROM eclipse-temurin:17-jre-jammy
|
|
WORKDIR /app
|
|
# 从构建阶段复制 jar 包
|
|
COPY --from=builder /app/target/*.jar app.jar
|
|
|
|
# 暴露端口
|
|
EXPOSE 8080
|
|
|
|
# 启动服务
|
|
ENTRYPOINT ["java", "-jar", "app.jar"]
|