Spring Boot + Thymeleaf app: fleet, drivers, vendors, bookings, billing/ settlements, payments, maintenance, inspections, reviews, telematics, audit log, staff/user management, and separate admin/vendor/driver portals. Includes Docker Compose deployment (app + Postgres). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
20 lines
588 B
Docker
20 lines
588 B
Docker
# ---------- Build stage ----------
|
|
FROM maven:3.9-eclipse-temurin-17 AS build
|
|
WORKDIR /build
|
|
# Cache dependencies first
|
|
COPY pom.xml .
|
|
RUN mvn -B -q dependency:go-offline
|
|
# Build the app
|
|
COPY src ./src
|
|
RUN mvn -B -q -DskipTests clean package
|
|
|
|
# ---------- Runtime stage ----------
|
|
FROM eclipse-temurin:17-jre
|
|
WORKDIR /app
|
|
# Uploaded documents/photos live here (mounted as a volume)
|
|
ENV STORAGE_DIR=/data/uploads
|
|
RUN mkdir -p /data/uploads
|
|
COPY --from=build /build/target/car-rental-0.0.1-SNAPSHOT.jar app.jar
|
|
EXPOSE 8080
|
|
ENTRYPOINT ["java", "-XX:MaxRAMPercentage=75", "-jar", "app.jar"]
|