From df53236853a47969c82ef6ce312968841bd2ff87 Mon Sep 17 00:00:00 2001 From: Peter Guhl Date: Tue, 16 Nov 2021 16:12:15 +0100 Subject: [PATCH] Compiling and running tapas on a local docker installation (#10) * First version building tasks and mongodb * Creating container for local tests * Initial version * Added mongodb to correct network * Added auction house * Acknowledgments, Dockerfile for app * Added app to build * Dockerfile for app * Mapped app port to localhost:8080 Co-authored-by: Ubuntu --- app/Dockerfile | 13 ++++++++ docker-compose-local.yml | 60 ++++++++++++++++++++++++++++++++++ tapas-auction-house/Dockerfile | 13 ++++++++ tapas-tasks/Dockerfile | 13 ++++++++ 4 files changed, 99 insertions(+) create mode 100644 app/Dockerfile create mode 100644 docker-compose-local.yml create mode 100644 tapas-auction-house/Dockerfile create mode 100644 tapas-tasks/Dockerfile diff --git a/app/Dockerfile b/app/Dockerfile new file mode 100644 index 0000000..429a177 --- /dev/null +++ b/app/Dockerfile @@ -0,0 +1,13 @@ +# Dockerfile/Docker-Compose file based on an initial version authored by Alexander Lontke (ASSE, Fall Semester 2021) + +FROM maven as build + +COPY . /app + +RUN mvn -f app/pom.xml --batch-mode --update-snapshots verify + +FROM openjdk + +COPY --from=build /app/target/app-0.1.0.jar ./app-0.1.0.jar + +CMD java -jar app-0.1.0.jar diff --git a/docker-compose-local.yml b/docker-compose-local.yml new file mode 100644 index 0000000..1ddfc24 --- /dev/null +++ b/docker-compose-local.yml @@ -0,0 +1,60 @@ +# Dockerfile/Docker-Compose file based on an initial version authored by Alexander Lontke (ASSE, Fall Semester 2021) + +version: "3.7" + +services: + app: + build: + context: ./app + dockerfile: Dockerfile + # Use environment variables instead of application.properties + environment: + - KEY=VALUE + ports: #Just needed when testing from outside the docker network + - "8080:8080" + networks: + - tapas-network + + tapas-tasks: + build: + context: ./tapas-tasks + dockerfile: Dockerfile + # Use environment variables instead of application.properties + environment: + - KEY=VALUE + ports: #Just needed when testing from outside + - "8081:8081" + networks: + - tapas-network + + tapas-auction-house: + build: + context: ./tapas-auction-house + dockerfile: Dockerfile + # Use environment variables instead of application.properties + environment: + - KEY=VALUE + ports: #Just needed when testing from outside + - "8082:8082" + networks: + - tapas-network + + mongodb: + image: mongo + container_name: mongodb + restart: unless-stopped + environment: + MONGO_INITDB_ROOT_USERNAME: root + MONGO_INITDB_ROOT_PASSWORD: 8nP7s0a # Can not be changed again later on + volumes: + - database:/data/db + networks: + - tapas-network + +#Volume for mongodb. One per server. +volumes: + database: + +networks: + tapas-network: + driver: bridge diff --git a/tapas-auction-house/Dockerfile b/tapas-auction-house/Dockerfile new file mode 100644 index 0000000..fcc6d83 --- /dev/null +++ b/tapas-auction-house/Dockerfile @@ -0,0 +1,13 @@ +# Dockerfile/Docker-Compose file based on an initial version authored by Alexander Lontke (ASSE, Fall Semester 2021) + +FROM maven as build + +COPY . /app + +RUN mvn -f app/pom.xml --batch-mode --update-snapshots verify + +FROM openjdk + +COPY --from=build /app/target/tapas-auction-house-0.0.1-SNAPSHOT.jar ./tapas-auction-house-0.0.1-SNAPSHOT.jar + +CMD java -jar tapas-auction-house-0.0.1-SNAPSHOT.jar diff --git a/tapas-tasks/Dockerfile b/tapas-tasks/Dockerfile new file mode 100644 index 0000000..b05be85 --- /dev/null +++ b/tapas-tasks/Dockerfile @@ -0,0 +1,13 @@ +# Dockerfile/Docker-Compose file based on an initial version authored by Alexander Lontke (ASSE, Fall Semester 2021) + +FROM maven as build + +COPY . /app + +RUN mvn -f app/pom.xml --batch-mode --update-snapshots verify + +FROM openjdk + +COPY --from=build /app/target/tapas-tasks-0.0.1-SNAPSHOT.jar ./tapas-tasks-0.0.1-SNAPSHOT.jar + +CMD java -jar tapas-tasks-0.0.1-SNAPSHOT.jar