# crm-backend 生产基础镜像(只含运行时依赖,不含 jar) # ------------------------------------------------------------ # 作用:提供 JRE 17 + LibreOffice(Office 缩略图渲染) 的运行底座。 # jar 不打进镜像,而是由 docker-compose.yml 的 crm-app 服务以 volume 挂载进来, # 这样更新 jar 只需覆盖文件 + 重启容器,无需重新 build 镜像。 # # 构建一次即可(很少变动,改了 LibreOffice 层才需重 build): # docker build -f deploy/Dockerfile.base -t crm-runtime:latest . # # 若生产用不到 Office 缩略图,可删除下面 LibreOffice 那层,镜像从 ~1GB 瘦到 ~200MB。 # ------------------------------------------------------------ FROM eclipse-temurin:17-jre RUN apt-get update \ && apt-get install -y --no-install-recommends libreoffice fonts-noto-cjk \ && rm -rf /var/lib/apt/lists/* WORKDIR /app # jar 由 compose 挂载到 /app/app.jar;此处只声明启动命令 EXPOSE 8080 ENV JAVA_OPTS="" ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar /app/app.jar"]