28 lines
998 B
Docker
28 lines
998 B
Docker
# BMS 后端 Dockerfile
|
||
# 构建:docker build -t bms-back:latest -f Dockerfile .
|
||
# 依赖:先在本机 mvn package 产出 ruoyi-admin.jar,或用多阶段构建(见下)
|
||
FROM eclipse-temurin:17-jre
|
||
|
||
# 设置时区与编码
|
||
ENV TZ=Asia/Shanghai \
|
||
LANG=C.UTF-8 \
|
||
JAVA_OPTS="-Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m"
|
||
|
||
# 工作目录
|
||
WORKDIR /app
|
||
|
||
# 上传目录(需与 application-prod.yml 的 ruoyi.profile 一致)
|
||
RUN mkdir -p /app/uploadPath /app/logs
|
||
|
||
# 拷贝后端 jar(先 mvn package 产出)
|
||
COPY bms-back/ruoyi-admin/target/ruoyi-admin.jar /app/ruoyi-admin.jar
|
||
|
||
# 拷贝生产配置(可选,若用 --spring.profiles.active=prod)
|
||
COPY deploy/application-prod.yml /app/application-prod.yml
|
||
|
||
# 对外端口(后端 8080,仅容器内网,由 Nginx 反代)
|
||
EXPOSE 8080
|
||
|
||
# 启动(用 prod profile,数据源通过环境变量注入)
|
||
ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar /app/ruoyi-admin.jar --spring.profiles.active=prod"]
|