30 lines
994 B
Docker
30 lines
994 B
Docker
FROM alpine:3.22 AS svelte_build
|
|
RUN apk add bash git npm
|
|
RUN adduser -Dh /home/svelte svelte
|
|
ADD . /home/svelte/Umbrella
|
|
RUN chown -R svelte /home/svelte/Umbrella
|
|
USER svelte
|
|
WORKDIR /home/svelte/Umbrella/frontend
|
|
RUN npm install && npm run build
|
|
|
|
|
|
FROM alpine AS java_build
|
|
RUN apk add bash git gradle fontconfig font-opensans openjdk21-jre
|
|
ADD . /Umbrella
|
|
WORKDIR /Umbrella
|
|
COPY --from=svelte_build /home/svelte/Umbrella/frontend/dist web/src/main/resources/web
|
|
RUN gradle --no-daemon build
|
|
|
|
|
|
FROM alpine
|
|
RUN apk add bash fontconfig font-opensans graphviz openjdk21-jre weasyprint
|
|
RUN adduser -D umbrella
|
|
COPY --from=java_build /Umbrella/backend/build/libs/backend.jar /home/umbrella/jar/
|
|
RUN chown -R umbrella /home/umbrella
|
|
ADD https://github.com/plantuml/plantuml/releases/download/v1.2025.10/plantuml-1.2025.10.jar /home/umbrella/plantuml.jar
|
|
USER umbrella
|
|
WORKDIR /home/umbrella
|
|
RUN mkdir .config && ln -s /host/config.json .config/Umbrella.json
|
|
EXPOSE 80
|
|
CMD java -jar jar/backend.jar
|