FROM eclipse-temurin:21-jre

VOLUME /tmp
## 创建目录，并使用它作为工作目录
RUN mkdir -p /app/java/seer-user
WORKDIR /app/java/seer-user
## 将后端项目的 Jar 文件，复制到镜像中
COPY ./target/*.jar app.jar

## 设置 TZ 时区
## 设置 JAVA_OPTS 环境变量，可通过 docker run -e "JAVA_OPTS=" 进行覆盖
ENV TZ=Asia/Shanghai \
    JAVA_OPTS="-Xms1g -Xmx1g -Xmn512m \
               -XX:+UseG1GC \
               -XX:MaxGCPauseMillis=200 \
               -XX:+UseContainerSupport \
               -XX:+UseNUMA \
               -XX:+ParallelRefProcEnabled \
               -XX:+UseStringDeduplication \
               -XX:MaxRAMPercentage=70.0 \
               -XX:MetaspaceSize=256m \
               -XX:MaxMetaspaceSize=256m \
               -XX:MaxDirectMemorySize=512m \
               -XX:+HeapDumpOnOutOfMemoryError \
               -XX:HeapDumpPath=./user_heapdump.hprof"

ENTRYPOINT exec java $JAVA_OPTS -jar app.jar  --spring.profiles.active="$SPRING_PROFILES_ACTIVE"  --spring.cloud.nacos.discovery.ip="$NACOS_DISCOVERY_IP"