更改pod内容器名
This commit is contained in:
@@ -1,48 +1,23 @@
|
||||
# # 使用官方 Java 8 精简镜像(含JDK,适合运行Spring Boot等Java应用)
|
||||
# FROM mirror.ccs.tencentyun.com/library/openjdk:8-jdk-slim AS runtime
|
||||
|
||||
# # 配置环境变量(解决中文乱码、时区问题)
|
||||
# ENV LANG=C.UTF-8 \
|
||||
# TZ=Asia/Shanghai \
|
||||
# JAVA_OPTS=""
|
||||
|
||||
# # 创建应用工作目录
|
||||
# WORKDIR /app
|
||||
|
||||
# # 复制主应用JAR 和 API JAR
|
||||
# COPY /start/target/start-0.0.1-SNAPSHOT.jar /app/flymoon-email.jar
|
||||
# RUN chmod 755 /app/flymoon-email.jar
|
||||
|
||||
# # 暴露应用端口(根据实际端口修改)
|
||||
# EXPOSE 4997 4998
|
||||
|
||||
# # 默认启动环境sit,可被覆盖,外部使用-e or env SPRING_PROFILES_ACTIVE=xxx覆盖
|
||||
# ARG RUN_PROFILE=sit-us
|
||||
# ENV SPRING_PROFILES_ACTIVE=${RUN_PROFILE}
|
||||
|
||||
# # 启动命令(支持外部传入JVM参数,如 -Xms512m -Xmx1024m)
|
||||
# ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar /app/flymoon-email.jar --spring.profiles.active=${SPRING_PROFILES_ACTIVE}"]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# ---- Stage 1: Build with Maven ----
|
||||
FROM maven:3.9.6-eclipse-temurin-8 AS builder
|
||||
FROM maven:3.8.8-eclipse-temurin-8 AS builder
|
||||
|
||||
WORKDIR /build
|
||||
|
||||
# 先仅复制 pom.xml 用于依赖缓存
|
||||
COPY application/pom.xml application/
|
||||
COPY domain/pom.xml domain/
|
||||
COPY infrastructure-cn/pom.xml infrastructure-cn/
|
||||
COPY infrastructure-us/pom.xml infrastructure-us/
|
||||
COPY infrastructure/pom.xml infrastructure/
|
||||
COPY interface/pom.xml interface/
|
||||
COPY start/pom.xml start/
|
||||
COPY pom.xml .
|
||||
|
||||
# 预下载所有依赖,pom 不变就不会重新下载
|
||||
RUN mvn -B dependency:go-offline
|
||||
|
||||
# 再复制源码
|
||||
COPY src ./src
|
||||
# 再复制所有源码
|
||||
COPY . .
|
||||
|
||||
# Maven 构建配置变量可变,us 或 cn, 默认为 us
|
||||
ARG MAVEN_BUILD_PROFILE=us
|
||||
@@ -50,7 +25,7 @@ RUN mvn clean package -Dmaven.test.skip=true -P${MAVEN_BUILD_PROFILE}
|
||||
|
||||
|
||||
# ---- Stage 2: Runtime ----
|
||||
FROM mirror.ccs.tencentyun.com/library/openjdk:8-jdk-slim AS runtime
|
||||
FROM mirror.ccs.tencentyun.com/library/openjdk:8-jdk AS runtime
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
@@ -59,7 +34,7 @@ ENV LANG=C.UTF-8 \
|
||||
JAVA_OPTS=""
|
||||
|
||||
# 从构建阶段复制 JAR
|
||||
COPY --from=builder /start/target/start-0.0.1-SNAPSHOT.jar /app/flymoon-email.jar
|
||||
COPY --from=builder /build/start/target/start-0.0.1-SNAPSHOT.jar /app/flymoon-email.jar
|
||||
|
||||
EXPOSE 4997 4998
|
||||
|
||||
@@ -67,4 +42,4 @@ EXPOSE 4997 4998
|
||||
ARG RUN_PROFILE=sit-us
|
||||
ENV SPRING_PROFILES_ACTIVE=${RUN_PROFILE}
|
||||
|
||||
ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar /app/app.jar --spring.profiles.active=${SPRING_PROFILES_ACTIVE}"]
|
||||
ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar /app/flymoon-email.jar --spring.profiles.active=${SPRING_PROFILES_ACTIVE}"]
|
||||
|
||||
49
Dockerfile/web/admin_web_Dockerfile
Normal file
49
Dockerfile/web/admin_web_Dockerfile
Normal file
@@ -0,0 +1,49 @@
|
||||
# ===============================
|
||||
# 1) 依赖安装 + 构建阶段
|
||||
# ===============================
|
||||
FROM node:16-alpine AS build
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
# 只拷贝 package.json,加快缓存命中
|
||||
COPY package.json ./
|
||||
|
||||
# 预先安装依赖(利用缓存)
|
||||
RUN npm install --registry=https://registry.npmmirror.com
|
||||
|
||||
# 拷贝全部代码
|
||||
COPY . .
|
||||
|
||||
# 通过构建参数传入构建环境(如 sit/test/prod)
|
||||
ARG BUILD_ENV=sit
|
||||
ENV BUILD_ENV=${BUILD_ENV}
|
||||
|
||||
# 要求 package.json 中的 script 形如:build:sit, build:test, build:prod
|
||||
RUN npm run build:${BUILD_ENV}
|
||||
|
||||
# ===============================
|
||||
# 2) 生产镜像阶段
|
||||
# ===============================
|
||||
FROM nginx:1.25-alpine AS runtime
|
||||
|
||||
# 清理默认 nginx 静态内容
|
||||
RUN rm -rf /usr/share/nginx/html/*
|
||||
|
||||
# 拷贝 build 结果
|
||||
COPY --from=build /app/dist /usr/share/nginx/html/
|
||||
|
||||
# 权限
|
||||
RUN chmod -R 755 /usr/share/nginx/html
|
||||
|
||||
EXPOSE 80
|
||||
|
||||
CMD ["nginx", "-g", "daemon off;"]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# docker build \
|
||||
# --build-arg BUILD_ENV=${BUILD_ENV} \
|
||||
# -t registry.xxx.com/your_project/web:${BUILD_NUMBER} .
|
||||
Reference in New Issue
Block a user