1.0.1 初始化铜壶管理系统项目并配置容器化
This commit is contained in:
23
backend/Dockerfile
Normal file
23
backend/Dockerfile
Normal file
@@ -0,0 +1,23 @@
|
||||
FROM maven:3.8.7-eclipse-temurin-11 AS builder
|
||||
WORKDIR /build
|
||||
COPY pom.xml .
|
||||
# 预下载依赖,利用缓存层加速后续构建
|
||||
RUN mvn dependency:go-offline -B
|
||||
COPY src ./src
|
||||
# 打包并跳过测试
|
||||
RUN mvn package -DskipTests
|
||||
|
||||
FROM eclipse-temurin:11-jre-alpine
|
||||
WORKDIR /app
|
||||
COPY --from=builder /build/target/*.jar app.jar
|
||||
|
||||
# 暴露给前端的反向代理端口
|
||||
EXPOSE 8080
|
||||
|
||||
# 覆盖application.properties里的数据库地址,将其挂载到独立volume中
|
||||
ENV SPRING_DATASOURCE_URL=jdbc:sqlite:/app/data/teapot-system.db
|
||||
|
||||
# 挂载数据卷以持久化SQLite和潜在的图片文件
|
||||
VOLUME /app/data
|
||||
|
||||
ENTRYPOINT ["java", "-Dspring.datasource.url=${SPRING_DATASOURCE_URL}", "-Djava.security.egd=file:/dev/./urandom", "-jar", "app.jar"]
|
||||
Reference in New Issue
Block a user