From 5bb31d0a594a671f59d6afe194d48c7f62672a50 Mon Sep 17 00:00:00 2001 From: amandilaras Date: Thu, 22 Feb 2024 09:30:30 +0200 Subject: [PATCH] upgrade argos Dockerfiles --- dmp-backend/Dockerfile | 27 ++++++++++++++++++++------- dmp-backend/Dockerfile.CI | 28 +++++++++++++++++++++++----- dmp-frontend/Dockerfile | 2 +- dmp-frontend/Dockerfile.CI | 2 +- 4 files changed, 45 insertions(+), 14 deletions(-) diff --git a/dmp-backend/Dockerfile b/dmp-backend/Dockerfile index 54c70beae..5da9cdbc6 100644 --- a/dmp-backend/Dockerfile +++ b/dmp-backend/Dockerfile @@ -1,6 +1,13 @@ -FROM maven:3-jdk-11 AS MAVEN_BUILD +####################################### Build stage ####################################### +FROM maven:3.9-eclipse-temurin-21-alpine AS build-stage - +ARG MAVEN_ACCOUNT_USR +ARG MAVEN_ACCOUNT_PSW +ARG REVISION +ARG PROFILE +ARG DEV_PROFILE_URL +ENV server_username=$MAVEN_ACCOUNT_USR +ENV server_password=$MAVEN_ACCOUNT_PSW COPY pom.xml /build/ COPY data /build/data/ @@ -8,16 +15,22 @@ COPY elastic /build/elastic/ #COPY logging /build/logging/ COPY queryable /build/queryable/ COPY web /build/web/ - - +RUN rm -f /build/web/src/main/resources/config/*-dev.yml WORKDIR /build/ -RUN mvn package -q - +#RUN mvn package -q +RUN mvn -Drevision=${REVISION} -DdevProfileUrl=${DEV_PROFILE_URL} -P${PROFILE} dependency:go-offline +# Build project +RUN mvn -Drevision=${REVISION} -DdevProfileUrl=${DEV_PROFILE_URL} -P${PROFILE} clean package + +######################################## Run Stage ######################################## +FROM eclipse-temurin:21-jre-alpine -FROM amazoncorretto:11 WORKDIR /app +ARG PROFILE + COPY --from=MAVEN_BUILD /build/web/target/web-1.0-SNAPSHOT.jar /app.jar + ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom" ,"-Dspring.profiles.active=${PROFILE}","-jar","/app.jar"] \ No newline at end of file diff --git a/dmp-backend/Dockerfile.CI b/dmp-backend/Dockerfile.CI index 5eea604df..a05f14970 100644 --- a/dmp-backend/Dockerfile.CI +++ b/dmp-backend/Dockerfile.CI @@ -1,14 +1,32 @@ -FROM maven:3-openjdk-11 AS MAVEN_BUILD +####################################### Build stage ####################################### +FROM maven:3.9-eclipse-temurin-21-alpine AS build-stage + +ARG MAVEN_ACCOUNT_USR +ARG MAVEN_ACCOUNT_PSW +ARG REVISION +ARG PROFILE +ARG DEV_PROFILE_URL +ENV server_username=$MAVEN_ACCOUNT_USR +ENV server_password=$MAVEN_ACCOUNT_PSW COPY pom.xml /build/ COPY elastic /build/elastic/ COPY web /build/web/ +RUN rm -f /build/web/src/main/resources/config/*-dev.yml WORKDIR /build/ -RUN mvn package -FROM adoptopenjdk/openjdk11:alpine-jre +RUN mvn -Drevision=${REVISION} -DdevProfileUrl=${DEV_PROFILE_URL} -P${PROFILE} dependency:go-offline +# Build project +RUN mvn -Drevision=${REVISION} -DdevProfileUrl=${DEV_PROFILE_URL} -P${PROFILE} clean package + +######################################## Run Stage ######################################## +FROM eclipse-temurin:21-jre-alpine + WORKDIR /app -COPY --from=MAVEN_BUILD /build/web/target/web-1.0-SNAPSHOT.jar /app/app.jar -ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-Dspring.profiles.active=${PROF}", "-Dspring.config.additional-location=/files/config/", "-cp", "/app/app.jar", "-Dloader.path=/files/repo-jars", "org.springframework.boot.loader.PropertiesLauncher"] +ARG PROFILE +ARG REVISION + +COPY --from=MAVEN_BUILD /build/web/target/web-1.0-SNAPSHOT.jar /app/app.jar +ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-Dspring.profiles.active=${PROFILE}", "-Dspring.config.additional-location=/files/config/", "-cp", "/app/app.jar", "-Dloader.path=/files/repo-jars", "org.springframework.boot.loader.PropertiesLauncher"] \ No newline at end of file diff --git a/dmp-frontend/Dockerfile b/dmp-frontend/Dockerfile index a84918a73..0bbd941a3 100644 --- a/dmp-frontend/Dockerfile +++ b/dmp-frontend/Dockerfile @@ -1,5 +1,5 @@ # stage1 as builder -FROM node:12-alpine AS BUILDER +FROM node:20-alpine AS BUILDER WORKDIR /app diff --git a/dmp-frontend/Dockerfile.CI b/dmp-frontend/Dockerfile.CI index 40d13c999..bc41c728c 100644 --- a/dmp-frontend/Dockerfile.CI +++ b/dmp-frontend/Dockerfile.CI @@ -1,5 +1,5 @@ # stage1 as builder -FROM node:12-alpine as builder +FROM node:20-alpine AS builder # copy the package.json to install dependencies COPY package.json ./