From 0b3147965f7e3ec47c1a1582aca5d83318005c54 Mon Sep 17 00:00:00 2001 From: Lucas Vieira Date: Tue, 4 Apr 2023 14:02:01 -0300 Subject: [PATCH] Introduce ergomake --- .ergomake/Dockerfile | 8 +++++++ .ergomake/docker-compose.yml | 45 ++++++++++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 .ergomake/Dockerfile create mode 100644 .ergomake/docker-compose.yml diff --git a/.ergomake/Dockerfile b/.ergomake/Dockerfile new file mode 100644 index 000000000..cc24bd677 --- /dev/null +++ b/.ergomake/Dockerfile @@ -0,0 +1,8 @@ +FROM openjdk:18 +ARG DATABASE +WORKDIR app +COPY . . +RUN /app/mvnw package -DskipTests +EXPOSE 8080 +ENV DATABASE ${DATABASE} +CMD sh -c 'java -jar -Dspring.profiles.active=$DATABASE /app/target/*.jar' diff --git a/.ergomake/docker-compose.yml b/.ergomake/docker-compose.yml new file mode 100644 index 000000000..686dc65a2 --- /dev/null +++ b/.ergomake/docker-compose.yml @@ -0,0 +1,45 @@ +version: '3.8' + +services: + postgres-app: + build: + context: .. + dockerfile: .ergomake/Dockerfile + args: + - DATABASE=postgres + ports: + - "8081:8080" + environment: + - POSTGRES_URL=jdbc:postgresql://postgres/petclinic + - POSTGRES_USER=petclinic + - POSTGRES_PASS=petclinic + mysql-app: + build: + context: .. + dockerfile: .ergomake/Dockerfile + args: + - DATABASE=mysql + ports: + - "8082:8080" + environment: + - MYSQL_URL=jdbc:mysql://mysql/petclinic + - MYSQL_USER=petclinic + - MYSQL_PASS=petclinic + mysql: + image: mysql + ports: + - "3306" + environment: + - MYSQL_ROOT_PASSWORD= + - MYSQL_ALLOW_EMPTY_PASSWORD=true + - MYSQL_USER=petclinic + - MYSQL_PASSWORD=petclinic + - MYSQL_DATABASE=petclinic + postgres: + image: postgres + ports: + - "5432" + environment: + - POSTGRES_PASSWORD=petclinic + - POSTGRES_USER=petclinic + - POSTGRES_DB=petclinic