From 3113eee4149ff735bfb44b72a35c5951758b39bc Mon Sep 17 00:00:00 2001
From: Constantin Simonis <constantin@simonis.lol>
Date: Wed, 12 Feb 2025 11:13:18 +0100
Subject: [PATCH 1/4] chore(deployment): add deployment for backend

---
 backend/.docker/Dockerfile                    | 32 +++++++++++++++++++
 backend/.dockerignore                         |  2 ++
 .../src/main/resources/application.properties |  2 +-
 3 files changed, 35 insertions(+), 1 deletion(-)
 create mode 100644 backend/.docker/Dockerfile
 create mode 100644 backend/.dockerignore

diff --git a/backend/.docker/Dockerfile b/backend/.docker/Dockerfile
new file mode 100644
index 0000000..1b2524c
--- /dev/null
+++ b/backend/.docker/Dockerfile
@@ -0,0 +1,32 @@
+# First stage: Build the application
+FROM gradle:jdk22 AS builder
+
+WORKDIR /app
+
+# Copy only Gradle wrapper and configuration files first (for caching efficiency)
+COPY gradlew build.gradle.kts settings.gradle.kts ./
+COPY gradle gradle
+
+# Give execute permissions to Gradle wrapper
+RUN chmod +x gradlew
+
+# Download dependencies first (improves caching)
+RUN ./gradlew dependencies
+
+# Copy the rest of the project files
+COPY src src
+
+# Build the application (skipping tests for faster build)
+RUN ./gradlew clean build -x test
+
+# Second stage: Run the application
+FROM openjdk:22-jdk-slim
+
+WORKDIR /app
+
+# Copy the built JAR from the first stage
+COPY --from=builder /app/build/libs/*.jar app.jar
+
+EXPOSE 8080
+
+ENTRYPOINT ["java", "-jar", "app.jar"]
diff --git a/backend/.dockerignore b/backend/.dockerignore
new file mode 100644
index 0000000..f06dfad
--- /dev/null
+++ b/backend/.dockerignore
@@ -0,0 +1,2 @@
+.gradle
+build
\ No newline at end of file
diff --git a/backend/src/main/resources/application.properties b/backend/src/main/resources/application.properties
index 938ce25..8271ece 100644
--- a/backend/src/main/resources/application.properties
+++ b/backend/src/main/resources/application.properties
@@ -1,4 +1,4 @@
-spring.datasource.url=jdbc:postgresql://localhost:5432/postgresdb
+spring.datasource.url=jdbc:postgresql://$DB_HOST}:5432/postgresdb
 spring.datasource.username=postgres_user
 spring.datasource.password=postgres_pass
 server.port=8080

From 9778a1e6d5935926463e28c1602a8b5f16028882 Mon Sep 17 00:00:00 2001
From: Constantin Simonis <constantin@simonis.lol>
Date: Wed, 12 Feb 2025 11:15:00 +0100
Subject: [PATCH 2/4] refactor: Refactor dockerfile

---
 backend/.docker/Dockerfile | 12 ------------
 1 file changed, 12 deletions(-)

diff --git a/backend/.docker/Dockerfile b/backend/.docker/Dockerfile
index 1b2524c..d6df4f7 100644
--- a/backend/.docker/Dockerfile
+++ b/backend/.docker/Dockerfile
@@ -1,32 +1,20 @@
-# First stage: Build the application
 FROM gradle:jdk22 AS builder
-
 WORKDIR /app
 
-# Copy only Gradle wrapper and configuration files first (for caching efficiency)
 COPY gradlew build.gradle.kts settings.gradle.kts ./
 COPY gradle gradle
 
-# Give execute permissions to Gradle wrapper
 RUN chmod +x gradlew
-
-# Download dependencies first (improves caching)
 RUN ./gradlew dependencies
 
-# Copy the rest of the project files
 COPY src src
 
-# Build the application (skipping tests for faster build)
 RUN ./gradlew clean build -x test
 
-# Second stage: Run the application
 FROM openjdk:22-jdk-slim
-
 WORKDIR /app
 
-# Copy the built JAR from the first stage
 COPY --from=builder /app/build/libs/*.jar app.jar
 
 EXPOSE 8080
-
 ENTRYPOINT ["java", "-jar", "app.jar"]

From a958d9f6ac91430fcf1316e253d1a835b1b95646 Mon Sep 17 00:00:00 2001
From: Constantin Simonis <constantin@simonis.lol>
Date: Wed, 12 Feb 2025 11:15:33 +0100
Subject: [PATCH 3/4] refactor: Whoops

---
 backend/src/main/resources/application.properties | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/backend/src/main/resources/application.properties b/backend/src/main/resources/application.properties
index 8271ece..713c7ff 100644
--- a/backend/src/main/resources/application.properties
+++ b/backend/src/main/resources/application.properties
@@ -1,4 +1,4 @@
-spring.datasource.url=jdbc:postgresql://$DB_HOST}:5432/postgresdb
+spring.datasource.url=jdbc:postgresql://${DB_HOST}:5432/postgresdb
 spring.datasource.username=postgres_user
 spring.datasource.password=postgres_pass
 server.port=8080

From 0836830df2be3d367856adacec40cb3296b38187 Mon Sep 17 00:00:00 2001
From: Constantin Simonis <constantin@simonis.lol>
Date: Wed, 12 Feb 2025 11:35:57 +0100
Subject: [PATCH 4/4] refactor: Add default value to db host

---
 backend/src/main/resources/application.properties | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/backend/src/main/resources/application.properties b/backend/src/main/resources/application.properties
index 713c7ff..d668f7a 100644
--- a/backend/src/main/resources/application.properties
+++ b/backend/src/main/resources/application.properties
@@ -1,4 +1,4 @@
-spring.datasource.url=jdbc:postgresql://${DB_HOST}:5432/postgresdb
+spring.datasource.url=jdbc:postgresql://${DB_HOST:-localhost}:5432/postgresdb
 spring.datasource.username=postgres_user
 spring.datasource.password=postgres_pass
 server.port=8080