Rebuild Dockerfile with 3 stages (CSS, uberjar, runtime) on port 3030. Add docker-compose.yml loading .env. Fix insert-price! ON CONFLICT to target (time_dk, price_area) matching the actual unique index. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
23 lines
656 B
Docker
23 lines
656 B
Docker
FROM node:22-alpine AS css
|
|
WORKDIR /app
|
|
COPY package.json package-lock.json ./
|
|
RUN npm ci
|
|
COPY resources/css resources/css
|
|
COPY src src
|
|
RUN npx @tailwindcss/cli -i resources/css/input.css -o resources/public/css/output.css --minify
|
|
|
|
FROM clojure:temurin-21-tools-deps-alpine AS build
|
|
WORKDIR /app
|
|
COPY deps.edn build.clj ./
|
|
RUN clojure -P && clojure -P -T:build
|
|
COPY . .
|
|
COPY --from=css /app/resources/public/css/output.css resources/public/css/output.css
|
|
RUN clojure -T:build all
|
|
|
|
FROM eclipse-temurin:21-jre-alpine
|
|
WORKDIR /app
|
|
COPY --from=build /app/target/elprice-standalone.jar app.jar
|
|
EXPOSE 3030
|
|
ENV PORT=3030
|
|
ENTRYPOINT ["java", "-jar", "app.jar"]
|