diff --git a/docker-compose.yml b/docker-compose.yml
deleted file mode 100644
index fc10e490a13e5ae936fcb6a3812d7a16632cfdde..0000000000000000000000000000000000000000
--- a/docker-compose.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-services:
-  mongodb:
-    image: mongo:latest
-    container_name: mongodb
-    ports:
-      - "27017:27017"
-    environment:
-      - MONGO_INITDB_ROOT_USERNAME=${MONGO_INITDB_ROOT_USERNAME}
-      - MONGO_INITDB_ROOT_PASSWORD=${MONGO_INITDB_ROOT_PASSWORD}
-      - MONGO_INITDB_DATABASE=todo-app
-
-  todo-app-1:
-    build:
-      context: .
-      dockerfile: Dockerfile
-    container_name: todo-app-1
-    ports:
-      - "3001:3000"
-    depends_on:
-      - mongodb
-    environment:
-      - MONGO_URI=${MONGO_URI}
-      - PORT=3000
-
-  todo-app-2:
-    build:
-      context: .
-      dockerfile: Dockerfile
-    container_name: todo-app-2
-    ports:
-      - "3002:3000"
-    depends_on:
-      - mongodb
-    environment:
-      - MONGO_URI=${MONGO_URI}
-
-  nginx:
-    image: nginx:latest
-    container_name: nginx
-    ports:
-      - "80:80"
-    depends_on:
-      - todo-app-1
-      - todo-app-2
-    volumes:
-      - "./nginx.conf:/etc/nginx/nginx.conf:ro"
-      - "/var/log/nginx/access.log:/var/log/nginx/access.log"
diff --git a/mongodb-deployment.yml b/mongodb-deployment.yml
new file mode 100644
index 0000000000000000000000000000000000000000..58fa9fd3868e6c8a8d8e0d673ad6d11d994936fd
--- /dev/null
+++ b/mongodb-deployment.yml
@@ -0,0 +1,44 @@
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: mongo-pvc
+spec:
+  accessModes:
+    - ReadWriteOnce
+  resources:
+    requests:
+      storage: 1Gi
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: mongodb
+  labels:
+    app: mongodb
+spec:
+  replicas: 1
+  selector:
+    matchLabels:
+      app: mongodb
+  template:
+    metadata:
+      labels:
+        app: mongodb
+    spec:
+      containers:
+        - name: mongodb
+          image: mongo:latest
+          ports:
+            - containerPort: 27017
+          env:
+            - name: MONGO_INITDB_ROOT_USERNAME
+              value: mongoAdmin
+            - name: MONGO_INITDB_ROOT_PASSWORD
+              value: someRandomPassword123$
+          volumeMounts:
+            - name: mongo-data
+              mountPath: /data/db
+      volumes:
+        - name: mongo-data
+          persistentVolumeClaim:
+            claimName: mongo-pvc
diff --git a/mongodb-service.yml b/mongodb-service.yml
new file mode 100644
index 0000000000000000000000000000000000000000..00a4a7d1d973c6a75875b6ee9f5197eb0523c2c2
--- /dev/null
+++ b/mongodb-service.yml
@@ -0,0 +1,10 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: mongodb
+spec:
+  ports:
+    - port: 27017
+      targetPort: 27017
+  selector:
+    app: mongodb
diff --git a/nginx.conf b/nginx.conf
deleted file mode 100644
index 737504acce61070255d2d0cc490601f3219f2163..0000000000000000000000000000000000000000
--- a/nginx.conf
+++ /dev/null
@@ -1,38 +0,0 @@
-events {
-    # Set the maximum number of simultaneous connections that can be opened by a worker process
-    worker_connections 1024;
-}
-
-http {
-    # Define an upstream group for load balancing the todo-app services
-    upstream todo-app {
-        ip_hash;
-        server todo-app-1:3000;  # First server in the upstream group
-        server todo-app-2:3000;  # Second server in the upstream group
-    }
-
-    # Define a custom log format for capturing upstream request details
-    log_format upstreamlog '[$time_local] $remote_addr - $remote_user - $request '
-                           '"$status" $body_bytes_sent '
-                           '"$http_referer" "$http_user_agent" '
-                           '"$gzip_ratio" '
-                           '${host} $request_uri '
-                           '$upstream_addr ';
-
-    server {
-        listen 80;  # Listen on port 80 for incoming HTTP requests
-        location / {
-            # Proxy requests to the upstream todo-app group
-            proxy_pass http://todo-app;
-            proxy_http_version 1.1;  # Use HTTP/1.1 for proxying
-            proxy_set_header Upgrade $http_upgrade;  # Set the Upgrade header
-            proxy_set_header Connection 'upgrade';  # Set the Connection header to upgrade
-            proxy_set_header Host $host;  # Forward the original Host header
-            proxy_cache_bypass $http_upgrade;  # Bypass cache for upgraded requests
-            # Log access requests using the defined upstream log format
-            access_log /var/log/nginx/access.log upstreamlog;
-        }
-    }
-}
-
-
diff --git a/todo-app-deployment.yml b/todo-app-deployment.yml
new file mode 100644
index 0000000000000000000000000000000000000000..ef1d8dde10c0b1beafae05aefd5dd659ab9fb60b
--- /dev/null
+++ b/todo-app-deployment.yml
@@ -0,0 +1,25 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: todo-app
+  labels:
+    app: todo-app
+spec:
+  replicas: 2
+  selector:
+    matchLabels:
+      app: todo-app
+  template:
+    metadata:
+      labels:
+        app: todo-app
+    spec:
+      containers:
+        - name: todo-app
+          image: todo-app:latest
+          imagePullPolicy: IfNotPresent
+          ports:
+            - containerPort: 3000
+          env:
+            - name: MONGO_URI
+              value: mongodb://mongoAdmin:someRandomPassword123$@mongodb:27017/todo-app?authSource=admin
diff --git a/todo-app-service.yml b/todo-app-service.yml
new file mode 100644
index 0000000000000000000000000000000000000000..1fe97a5cd0d86545d29d708680813591bcb12d13
--- /dev/null
+++ b/todo-app-service.yml
@@ -0,0 +1,11 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: todo-app
+spec:
+  ports:
+    - port: 3000
+      targetPort: 3000
+  selector:
+    app: todo-app
+  type: NodePort