Tino 1 ماه پیش
کامیت
a91b73644a
8فایلهای تغییر یافته به همراه128 افزوده شده و 0 حذف شده
  1. 3 0
      README.md
  2. 1 0
      borraTodo.sh
  3. 2 0
      creaSecret.sh
  4. 2 0
      creaTodo.sh
  5. 8 0
      mongo-configmap.yaml
  6. 57 0
      mongo-express-deployment.yaml
  7. 46 0
      mongoDB-config.yaml
  8. 9 0
      mongoDB-secret.yaml

+ 3 - 0
README.md

@@ -0,0 +1,3 @@
+# Mongo-express para acceder a Overleaf
+
+el fichero ```mongoDB-config.yaml``` crea un mongodb que vale para probar

+ 1 - 0
borraTodo.sh

@@ -0,0 +1 @@
+kubectl -n mongo-express delete -f mongo-express-deployment.yaml -f mongoDB-config.yaml -f mongo-configmap.yaml -f mongoDB-secret.yaml

+ 2 - 0
creaSecret.sh

@@ -0,0 +1,2 @@
+echo -n 'creylopez' | base64
+echo -n 'Dsa-0213' | base64

+ 2 - 0
creaTodo.sh

@@ -0,0 +1,2 @@
+kubectl -n mongo-express create -f mongo-configmap.yaml -f mongoDB-secret.yaml -f mongo-express-deployment.yaml
+kubectl -n mongo-express get all

+ 8 - 0
mongo-configmap.yaml

@@ -0,0 +1,8 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: mongodb-configmap
+  namespace: mongo-express
+data:
+  database_url: mongo-mongodb-headless.overleaf.svc.cluster.local/sharelatex
+  #database_url: mongodb-service

+ 57 - 0
mongo-express-deployment.yaml

@@ -0,0 +1,57 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: mongo-express
+  namespace: mongo-express
+  labels:
+    app: mongo-express
+spec:
+  replicas: 1
+  selector:
+    matchLabels:
+      app: mongo-express
+  template:
+    metadata:
+      labels:
+        app: mongo-express
+    spec:
+      containers:
+      - name: mongo-express
+        image: mongo-express
+        ports:
+        - containerPort: 8081
+        env:
+        # 1. Fuerza a Mongo Express a ignorar su lógica interna de construcción
+        - name: ME_CONFIG_MONGODB_URL
+          value: "mongodb://mongo-mongodb-headless.overleaf.svc.cluster.local:27017/sharelatex?authSource=admin"
+
+        # 2. Obligatorio: Pon el "SERVER" apuntando exactamente a la misma dirección 
+        # para resolver un bug de herencia de variables en Kubernetes.
+        - name: ME_CONFIG_MONGODB_SERVER
+          value: "mongo-mongodb-headless.overleaf.svc.cluster.local"
+
+        - name: ME_CONFIG_MONGODB_ADMINUSERNAME
+          valueFrom:
+            secretKeyRef:
+              name: mongodb-secret
+              key: mongo-root-username
+        - name: ME_CONFIG_MONGODB_ADMINPASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: mongodb-secret
+              key: mongo-root-password
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: mongo-express-service
+  namespace: mongo-express
+spec:
+  selector:
+    app: mongo-express
+  type: NodePort
+  ports:
+    - protocol: TCP
+      port: 8081
+      targetPort: 8081
+      nodePort: 30000

+ 46 - 0
mongoDB-config.yaml

@@ -0,0 +1,46 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: mongodb-deployment
+  namespace: mongo-express
+  labels:
+    app: mongodb
+spec:
+  replicas: 1
+  selector:
+    matchLabels:
+      app: mongodb
+  template:
+    metadata:
+      labels:
+        app: mongodb
+    spec:
+      containers:
+      - name: mongodb
+        image: mongo
+        ports:
+        - containerPort: 27017
+        env:
+        - name: MONGO_INITDB_ROOT_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: mongodb-secret
+              key: mongo-root-username
+        - name: MONGO_INITDB_ROOT_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: mongodb-secret
+              key: mongo-root-password
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: mongodb-service
+  namespace: mongo-express
+spec:
+  selector:
+    app: mongodb
+  ports:
+    - protocol: TCP
+      port: 27017
+      targetPort: 27017

+ 9 - 0
mongoDB-secret.yaml

@@ -0,0 +1,9 @@
+apiVersion: v1
+kind: Secret
+metadata:
+  name: mongodb-secret
+  namespace: mongo-express
+type: Opaque
+data:
+    mongo-root-username: 
+    mongo-root-password: