17 lines
788 B
Docker
17 lines
788 B
Docker
# U02(R07):最小容器化——两层镜像(构建 + 运行)。本地验证:docker build -t msgexchange-v2 .
|
|||
|
|
# 运行时通过环境变量注入口令/端点(零入库):MSGX_DB_URL/MSGX_DB_USER/MSGX_DB_PASSWORD/
|
||
|
|
# MSGX_REDIS_URI/MSGX_KAFKA_SERVERS/MSGX_EUREKA_URL(可选)等,见 src/main/resources/application.yml。
|
||
|
|
FROM eclipse-temurin:25-jdk AS build
|
||
|
|
WORKDIR /app
|
||
|
|
COPY gradlew gradlew.bat settings.gradle.kts build.gradle.kts gradle.properties ./
|
||
|
|
COPY gradle ./gradle
|
||
|
|
RUN ./gradlew --no-daemon dependencies --console=plain >/dev/null 2>&1 || true
|
||
|
|
COPY src ./src
|
||
|
|
RUN ./gradlew --no-daemon installDist --console=plain
|
||
|
|
|
||
|
|
FROM eclipse-temurin:25-jre
|
||
|
|
WORKDIR /app
|
||
|
|
COPY --from=build /app/build/install/msgexchange-v2/ ./
|
||
|
|
EXPOSE 8080
|
||
|
|
ENTRYPOINT ["bin/msgexchange-v2"]
|