diff --git a/minikube/mongodb-pv.yaml b/minikube/mongodb-pv.yaml
index 7cd11c2e5eb7e6219429943a4c19a0dd6ed15040..46f1f1dd98b3b2a253bea26b9db6eb375ca77915 100644
--- a/minikube/mongodb-pv.yaml
+++ b/minikube/mongodb-pv.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: PersistentVolume
metadata:
- name: mongodb-pv
+ name: mongo-pv
namespace: todo
spec:
capacity:
diff --git a/minikube/mongodb-pvc.yaml b/minikube/mongodb-pvc.yaml
index e786d51fb6230d16537cbeb86353bc1383c760cd..c5a245f96d691df715b5338a93ccb9f5ba983cb9 100644
--- a/minikube/mongodb-pvc.yaml
+++ b/minikube/mongodb-pvc.yaml
@@ -1,7 +1,7 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
- name: mongodb-pvc
+ name: mongo-pvc
namespace: todo
spec:
accessModes:
diff --git a/minikube/mongodb-secrets.yaml b/minikube/mongodb-secrets.yaml
index a24ca94be8f0575f5ddbb89f23080505ccb93a8f..8bbcb1284aa18ff15ab4bc47ccbc0c374ca19bff 100644
--- a/minikube/mongodb-secrets.yaml
+++ b/minikube/mongodb-secrets.yaml
@@ -1,8 +1,10 @@
apiVersion: v1
-data:
- password: dG9kb2RiYWRtaW5wYXNzd29yZAo=
- username: dG9kb2RidXNlcgo=
kind: Secret
metadata:
creationTimestamp: null
- name: mongo-creds
\ No newline at end of file
+ name: mongodb-secrets
+type: Opaque
+data:
+ password: dG9kb2RiYWRtaW5wYXNzd29yZAo=
+ username: dG9kb2RidXNlcgo=
+
diff --git a/minikube/mongodb.yaml b/minikube/mongodb.yaml
index 07ec1ba48373449fd5da9ffbbf2e18a3c61ded43..729850471505c0da78cec357ae74839573d23d2a 100644
--- a/minikube/mongodb.yaml
+++ b/minikube/mongodb.yaml
@@ -19,19 +19,25 @@ spec:
ports:
- containerPort: 27017
env:
+ - name: MONGO_INITDB_DATABASE
+ value: todo
- name: MONGO_INITDB_ROOT_USERNAME
value: tododbuser
- name: MONGO_INITDB_ROOT_PASSWORD
value: tododbadminpassword
- - name: MONGO_INITDB_DATABASE
- value: todo
volumeMounts:
- mountPath: /data/db
- name: mongodb-pv
+ name: mongo-data
+ - name: init-script
+ mountPath: /docker-entrypoint-initdb.d
+
volumes:
- - name: mongodb-pv
+ - name: mongo-data
persistentVolumeClaim:
claimName: mongo-pvc
+ - name: init-script
+ configMap:
+ name: mongo-init-script
---
apiVersion: v1
@@ -39,9 +45,28 @@ kind: Service
metadata:
name: mongodb-service
spec:
+ clusterIP: None
ports:
- - name: mongodb
+ - protocol: TCP
port: 27017
targetPort: 27017
selector:
app: mongodb
+
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: mongo-init-script
+ namespace: todo
+data:
+ init-mongo.js: |
+ db = db.getSiblingDB('todo');
+ db.createUser({
+ user: 'tododbuser',
+ pwd: 'tododbadminpassword',
+ roles: [
+ { role: 'userAdminAnyDatabase', db: 'todo' },
+ { role: 'readWriteAnyDatabase', db: 'todo' }
+ ]
+ });