Dockerfile 681 B

123456789101112131415161718192021222324
  1. FROM liferay/jdk21:latest
  2. # 构建参数
  3. ARG env=pro
  4. # 运行时环境变量
  5. ENV ENVIRONMENT=${env:-pro} \
  6. TZ=Asia/Shanghai
  7. # 设置时区
  8. RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
  9. # 设置工作目录
  10. WORKDIR /app
  11. RUN mkdir logs
  12. # 复制 jar 文件
  13. COPY ./target/gdt-auto.jar app.jar
  14. # 创建非 root 用户
  15. RUN groupadd -r appgroup && useradd -r -g appgroup appuser
  16. USER appuser
  17. ENTRYPOINT ["sh", "-c", "java", "--add-opens", "java.base/java.lang=ALL-UNNAMED", "--add-opens", "java.base/java.util=ALL-UNNAMED", "--add-opens", "java.base/java.lang.reflect=ALL-UNNAMED", "-Dspring.profiles.active=${ENVIRONMENT}", "-jar", "app.jar"]