From 2635692c639609eba6712a0e1c1ba811e85b6d17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Al=C5=BEbeta=20Hajn=C3=A1?= <xhajna@fi.muni.cz> Date: Fri, 5 May 2023 10:14:41 +0200 Subject: [PATCH] feat: one dockerfile for build all modules + build stage, docker compose reflecting changes --- Dockerfile | 44 ++++++++++++++++++++++++++++++++++++++++ application/Dockerfile | 3 --- core/Dockerfile | 3 --- docker-compose.yaml | 36 +++++++++++++++++++++----------- notification/Dockerfile | 3 --- visualization/Dockerfile | 3 --- 6 files changed, 68 insertions(+), 24 deletions(-) create mode 100644 Dockerfile delete mode 100644 application/Dockerfile delete mode 100644 core/Dockerfile delete mode 100644 notification/Dockerfile delete mode 100644 visualization/Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..da0d673 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,44 @@ +# Define the base image +FROM maven:3.9.0-eclipse-temurin-17-alpine AS build + +# Copy the pom.xml parent file and module dirs +COPY pom.xml /build/pom.xml +COPY application /build/application +COPY core /build/core +COPY notification /build/notification +COPY visualization /build/visualization + +WORKDIR /build +RUN mvn clean install -DskipTests + +FROM eclipse-temurin:17-jre-focal AS pa165-formula-team-management-application + +COPY --from=build /build/application/target/*.jar ./application.jar + +# Expose ports and set entry point +EXPOSE 8081 +CMD ["java", "-jar", "application.jar"] + +FROM eclipse-temurin:17-jre-focal AS pa165-formula-team-management-core + +COPY --from=build /build/core/target/*.jar ./core.jar + +# Expose ports and set entry point +EXPOSE 8090 +CMD ["java", "-jar", "core.jar"] + +FROM eclipse-temurin:17-jre-focal AS pa165-formula-team-management-notification + +COPY --from=build /build/notification/target/*.jar ./notification.jar + +# Expose ports and set entry point +EXPOSE 8083 +CMD ["java", "-jar", "notification.jar"] + +FROM eclipse-temurin:17-jre-focal AS pa165-formula-team-management-visualization + +COPY --from=build /build/visualization/target/*.jar ./visualization.jar + +# Expose ports and set entry point +EXPOSE 8082 +CMD ["java", "-jar", "visualization.jar"] \ No newline at end of file diff --git a/application/Dockerfile b/application/Dockerfile deleted file mode 100644 index a418253..0000000 --- a/application/Dockerfile +++ /dev/null @@ -1,3 +0,0 @@ -FROM eclipse-temurin:17-jdk-alpine -COPY target/*.jar /app.jar -ENTRYPOINT ["java", "-jar", "/app.jar"] diff --git a/core/Dockerfile b/core/Dockerfile deleted file mode 100644 index a418253..0000000 --- a/core/Dockerfile +++ /dev/null @@ -1,3 +0,0 @@ -FROM eclipse-temurin:17-jdk-alpine -COPY target/*.jar /app.jar -ENTRYPOINT ["java", "-jar", "/app.jar"] diff --git a/docker-compose.yaml b/docker-compose.yaml index 71b0cb7..d4372ce 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -1,19 +1,31 @@ ---- -version: '3' +version: "3.9" + services: - core: - build: "./core" - ports: - - "8090:8090" application: - build: "./application" + build: + context: . + target: pa165-formula-team-management-application ports: - "8081:8081" - visualization: - build: "./visualization" + + core: + build: + context: . + target: pa165-formula-team-management-core ports: - - "8082:8082" + - "8090:8090" +# command: ["java", "-jar", "core.jar", "--server.port=8090"] + notification: - build: "./notification" + build: + context: . + target: pa165-formula-team-management-notification + ports: + - "8083:8083" + + visualization: + build: + context: . + target: pa165-formula-team-management-visualization ports: - - "8083:8083" \ No newline at end of file + - "8082:8082" \ No newline at end of file diff --git a/notification/Dockerfile b/notification/Dockerfile deleted file mode 100644 index a418253..0000000 --- a/notification/Dockerfile +++ /dev/null @@ -1,3 +0,0 @@ -FROM eclipse-temurin:17-jdk-alpine -COPY target/*.jar /app.jar -ENTRYPOINT ["java", "-jar", "/app.jar"] diff --git a/visualization/Dockerfile b/visualization/Dockerfile deleted file mode 100644 index a418253..0000000 --- a/visualization/Dockerfile +++ /dev/null @@ -1,3 +0,0 @@ -FROM eclipse-temurin:17-jdk-alpine -COPY target/*.jar /app.jar -ENTRYPOINT ["java", "-jar", "/app.jar"] -- GitLab