Index: .gitignore
===================================================================
--- .gitignore	(revision d820f622da0cb45171cb1c70af9309722adede2a)
+++ .gitignore	(revision d820f622da0cb45171cb1c70af9309722adede2a)
@@ -0,0 +1,2 @@
+# Environment config
+.env
Index: ReserveNGo-backend/Dockerfile
===================================================================
--- ReserveNGo-backend/Dockerfile	(revision d820f622da0cb45171cb1c70af9309722adede2a)
+++ ReserveNGo-backend/Dockerfile	(revision d820f622da0cb45171cb1c70af9309722adede2a)
@@ -0,0 +1,12 @@
+# Build stage
+FROM maven:3.9.6-eclipse-temurin-21 AS build
+WORKDIR /app
+COPY . .
+RUN mvn clean package -DskipTests
+
+# Run stage
+FROM eclipse-temurin:21-jdk-alpine
+WORKDIR /app
+COPY --from=build /app/target/*.jar app.jar
+EXPOSE 8080
+ENTRYPOINT ["java", "-jar", "app.jar"]
Index: serveNGo-backend/docker-compose.yml
===================================================================
--- ReserveNGo-backend/docker-compose.yml	(revision 8a16076149752b7b9ccbc7a0e6b315f7ddaf7de5)
+++ 	(revision )
@@ -1,14 +1,0 @@
-version: '3'
-
-services:
-  wp-db:
-    image: "postgres"
-    container_name: "resAndGo"
-    environment:
-      - POSTGRES_USER=za123
-      - POSTGRES_PASSWORD=123
-      - POSTGRES_DB=resandgo
-    ports:
-      - "5432:5432"
-    volumes:
-      - ./postgres-data:/var/lib/postgresql/data
Index: ReserveNGo-backend/src/main/resources/application-dev.properties
===================================================================
--- ReserveNGo-backend/src/main/resources/application-dev.properties	(revision d820f622da0cb45171cb1c70af9309722adede2a)
+++ ReserveNGo-backend/src/main/resources/application-dev.properties	(revision d820f622da0cb45171cb1c70af9309722adede2a)
@@ -0,0 +1,8 @@
+spring.datasource.url=jdbc:h2:mem:testdb
+
+spring.datasource.username=admin
+spring.datasource.password=admin
+
+spring.jpa.hibernate.ddl-auto=create-drop
+spring.h2.console.enabled=true
+spring.h2.console.path=/h2
Index: serveNGo-backend/src/main/resources/application-h2.properties
===================================================================
--- ReserveNGo-backend/src/main/resources/application-h2.properties	(revision 8a16076149752b7b9ccbc7a0e6b315f7ddaf7de5)
+++ 	(revision )
@@ -1,6 +1,0 @@
-spring.datasource.url=jdbc:h2:mem:testdb
-spring.datasource.username=admin
-spring.datasource.password=admin
-spring.jpa.hibernate.ddl-auto=create-drop
-spring.h2.console.enabled=true
-spring.h2.console.path=/h2
Index: ReserveNGo-backend/src/main/resources/application-prod.properties
===================================================================
--- ReserveNGo-backend/src/main/resources/application-prod.properties	(revision 8a16076149752b7b9ccbc7a0e6b315f7ddaf7de5)
+++ ReserveNGo-backend/src/main/resources/application-prod.properties	(revision d820f622da0cb45171cb1c70af9309722adede2a)
@@ -1,9 +1,7 @@
-spring.datasource.url=jdbc:postgresql://localhost:5432/resngo
+spring.datasource.url=jdbc:postgresql://${DB_HOST:localhost}:${DB_PORT:5433}/resngo
 
-spring.datasource.username=rng
-spring.datasource.password=rng
+spring.datasource.username=${DB_USER:rng}
+spring.datasource.password=${DB_PASSWORD:rng}
 
-spring.jpa.database-platform=org.hibernate.dialect.PostgreSQLDialect
-
-spring.jpa.hibernate.ddl-auto=update
+spring.jpa.hibernate.ddl-auto=create-drop
 spring.jpa.show-sql=true
Index: ReserveNGo-backend/src/main/resources/application.properties
===================================================================
--- ReserveNGo-backend/src/main/resources/application.properties	(revision 8a16076149752b7b9ccbc7a0e6b315f7ddaf7de5)
+++ ReserveNGo-backend/src/main/resources/application.properties	(revision d820f622da0cb45171cb1c70af9309722adede2a)
@@ -2,4 +2,5 @@
 server.port=8080
 spring.profiles.active=h2
+# use prod for postgre
 
 spring.servlet.multipart.max-file-size=10MB
Index: docker-compose.yml
===================================================================
--- docker-compose.yml	(revision d820f622da0cb45171cb1c70af9309722adede2a)
+++ docker-compose.yml	(revision d820f622da0cb45171cb1c70af9309722adede2a)
@@ -0,0 +1,31 @@
+services:
+  backend:
+    build:
+      context: ./ReserveNGo-backend
+      dockerfile: Dockerfile
+    ports:
+      - "8080:8080"
+    depends_on:
+      - db
+    environment:
+      DB_HOST: ${DB_HOST}
+      DB_USER: ${DB_USER}
+      DB_PORT: ${DB_PORT}
+      DB_PASSWORD: ${DB_PASSWORD}
+      SPRING_PROFILES_ACTIVE: prod
+
+  db:
+    image: postgres:17
+    container_name: database
+    restart: always
+    environment:
+      POSTGRES_DB: ${POSTGRES_DB}
+      POSTGRES_USER: ${POSTGRES_USER}
+      POSTGRES_PASSWORD: ${POSTGRES_USER}
+    ports:
+      - "5433:5432"
+    volumes:
+      - db_data:/var/lib/postgresql/data
+
+volumes:
+  db_data:
