Celestino Rey 8 mesiacov pred
commit
462f35385f

+ 7 - 0
Reevolution/Academia/borraTodo.sh

@@ -0,0 +1,7 @@
+kubectl delete -f mysql-deployment.yaml
+kubectl delete -f wordpress-deployment.yaml
+kubectl delete -f php-deployment.yaml
+kubectl delete -f pvc-mysql.yaml
+kubectl delete -f pvc-wordpress.yaml
+kubectl delete -f wordpress-ingress.yaml
+kubectl delete -f wordpress-secrets.yaml

+ 3 - 0
Reevolution/Academia/borraWP.sh

@@ -0,0 +1,3 @@
+kubectl delete -f mysql-deployment.yaml
+kubectl delete -f wordpress-deployment.yaml
+kubectl delete -f php-deployment.yaml

+ 7 - 0
Reevolution/Academia/creaTodo.sh

@@ -0,0 +1,7 @@
+kubectl create -f mysql-deployment.yaml
+kubectl create -f wordpress-deployment.yaml
+kubectl create -f php-deployment.yaml
+kubectl create -f pvc-mysql.yaml
+kubectl create -f pvc-wordpress.yaml
+kubectl create -f wordpress-ingress.yaml
+kubectl create -f wordpress-secrets.yaml

+ 3 - 0
Reevolution/Academia/creaWP.sh

@@ -0,0 +1,3 @@
+kubectl create -f mysql-deployment.yaml
+kubectl create -f wordpress-deployment.yaml
+kubectl create -f php-deployment.yaml

+ 56 - 0
Reevolution/Academia/mysql-deployment.yaml

@@ -0,0 +1,56 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: wp-academia-mysql
+  namespace: wp-academia
+  labels:
+    app: wp-academia
+spec:
+  ports:
+    - port: 3306
+  selector:
+    app: wp-academia
+    tier: mysql
+  clusterIP: None
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: wp-academia-mysql
+  namespace: wp-academia
+  labels:
+    app: wp-academia
+spec:
+  selector:
+    matchLabels:
+      app: wp-academia
+      tier: mysql
+  strategy:
+    type: Recreate
+  template:
+    metadata:
+      labels:
+        app: wp-academia
+        tier: mysql
+    spec:
+      containers:
+      - image: mariadb:latest
+        name: mysql
+        env:
+        - name: MYSQL_ROOT_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: mysqlwp-pass
+              key: password
+        ports:
+        - containerPort: 3306
+          name: mysql
+        volumeMounts:
+        - name: mysql-persistent-storage
+          mountPath: /var/lib/mysql
+      imagePullSecrets:
+      - name: reg-cred-secret    
+      volumes:
+      - name: mysql-persistent-storage
+        persistentVolumeClaim:
+          claimName: mysql-wp-pv-claim

+ 57 - 0
Reevolution/Academia/php-deployment.yaml

@@ -0,0 +1,57 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: phpmyadmin-wp-academia
+  namespace: wp-academia
+  labels:
+    app: wp-academia
+spec:
+  selector:
+    app: wp-academia
+    tier: phpmyadmin
+  type: NodePort
+  ports:
+    - name: phpadmin
+      port: 80
+      nodePort: 30183
+      targetPort: phpmyadm
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: phpmyadmin-wp-academia
+  namespace: wp-academia
+  labels:
+    app: wp-academia
+spec:
+  selector:
+    matchLabels:
+      app: wp-academia
+      tier: phpmyadmin
+  strategy:
+    type: Recreate
+  template:
+    metadata:
+      labels:
+        app: wp-academia
+        tier: phpmyadmin
+    spec:
+      containers:
+        - name: phpmyadmin
+          image: phpmyadmin
+          #image: docker-registry:32000/phpmyadmin:1.0
+          ports:
+            - containerPort: 80
+              name: phpmyadm
+          env:
+            - name: PMA_HOST
+              value: wp-academia-mysql
+            - name: PMA_PORT
+              value: "3306"
+            - name: MYSQL_ROOT_PASSWORD
+              valueFrom:
+                secretKeyRef:
+                  name: mysqlwp-pass
+                  key: password
+      imagePullSecrets:
+      - name: reg-cred-secret

+ 14 - 0
Reevolution/Academia/pvc-mysql.yaml

@@ -0,0 +1,14 @@
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: mysql-wp-pv-claim
+  namespace: wp-academia
+  labels:
+    app: wp-academia
+spec:
+  accessModes:
+    - ReadWriteOnce
+  resources:
+    requests:
+      storage: 23Gi
+---

+ 14 - 0
Reevolution/Academia/pvc-wordpress.yaml

@@ -0,0 +1,14 @@
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: wp-pv-claim
+  namespace: wp-academia
+  labels:
+    app: wp-academia
+spec:
+  accessModes:
+    - ReadWriteOnce
+  resources:
+    requests:
+      storage: 13Gi
+---

+ 65 - 0
Reevolution/Academia/wordpress-deployment.yaml

@@ -0,0 +1,65 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: wp-academia
+  namespace: wp-academia
+  labels:
+    app: wp-academia
+spec:
+  type: NodePort
+  ports:
+    - port: 80
+      nodePort: 30089
+      targetPort: wp-academia
+  selector:
+    app: wp-academia
+    tier: frontend
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: wp-academia
+  namespace: wp-academia
+  labels:
+    app: wp-academia
+spec:
+  selector:
+    matchLabels:
+      app: wp-academia
+      tier: frontend
+  strategy:
+    type: Recreate
+  template:
+    metadata:
+      labels:
+        app: wp-academia
+        tier: frontend
+    spec:
+      containers:
+      - image: wordpress
+        name: wp-academia
+        env:
+        - name: WORDPRESS_DB_HOST
+          value: wp-academia-mysql
+        - name: WORDPRESS_DB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: mysqlwp-pass
+              key: password
+        - name: WORDPRESS_DB_USER
+          valueFrom:
+            secretKeyRef:
+              name: mysqlwp-pass
+              key: db_user
+        ports:
+        - containerPort: 80
+          name: wp-academia
+        volumeMounts:
+        - name: wp-academia-persistent-storage
+          mountPath: /var/www/html
+      imagePullSecrets:
+      - name: reg-cred-secret
+      volumes:
+      - name: wp-academia-persistent-storage
+        persistentVolumeClaim:
+          claimName: wp-pv-claim

+ 32 - 0
Reevolution/Academia/wordpress-ingress.yaml

@@ -0,0 +1,32 @@
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+  generation: 1
+  managedFields:
+    - apiVersion: networking.k8s.io/v1
+      fieldsType: FieldsV1
+      fieldsV1:
+        f:spec:
+          f:defaultBackend:
+            .: {}
+            f:service:
+              .: {}
+              f:name: {}
+              f:port: {}
+          f:rules: {}
+      manager: rancher
+      operation: Update
+  name: wp-academia
+  namespace: wp-academia
+spec:
+  defaultBackend:
+    service:
+      name: wp-academia
+      port:
+        number: 80
+  ingressClassName: nginx
+  rules:
+    - host: academia.reymota.lab
+status:
+  loadBalancer: {}
+

+ 9 - 0
Reevolution/Academia/wordpress-secrets.yaml

@@ -0,0 +1,9 @@
+apiVersion: v1
+kind: Secret
+metadata:
+  name: mysqlwp-pass
+  namespace: wp-academia
+data:
+  password: RHNhLTAyMTM=
+  db_user: cm9vdA==
+  db_passwd: RHNhLTAyMTM=

+ 7 - 0
Reevolution/Neuroreevolution/borraTodo.sh

@@ -0,0 +1,7 @@
+kubectl delete -f mysql-deployment.yaml
+kubectl delete -f wordpress-deployment.yaml
+kubectl delete -f php-deployment.yaml
+kubectl delete -f pvc-mysql.yaml
+kubectl delete -f pvc-wordpress.yaml
+kubectl delete -f wordpress-ingress.yaml
+kubectl delete -f wordpress-secrets.yaml

+ 3 - 0
Reevolution/Neuroreevolution/borraWP.sh

@@ -0,0 +1,3 @@
+kubectl delete -f mysql-deployment.yaml
+kubectl delete -f wordpress-deployment.yaml
+kubectl delete -f php-deployment.yaml

+ 7 - 0
Reevolution/Neuroreevolution/creaTodo.sh

@@ -0,0 +1,7 @@
+kubectl create -f mysql-deployment.yaml
+kubectl create -f wordpress-deployment.yaml
+kubectl create -f php-deployment.yaml
+kubectl create -f pvc-mysql.yaml
+kubectl create -f pvc-wordpress.yaml
+kubectl create -f wordpress-ingress.yaml
+kubectl create -f wordpress-secrets.yaml

+ 3 - 0
Reevolution/Neuroreevolution/creaWP.sh

@@ -0,0 +1,3 @@
+kubectl create -f mysql-deployment.yaml
+kubectl create -f wordpress-deployment.yaml
+kubectl create -f php-deployment.yaml

+ 56 - 0
Reevolution/Neuroreevolution/mysql-deployment.yaml

@@ -0,0 +1,56 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: wp-neuroreev-mysql
+  namespace: wp-neuroreev
+  labels:
+    app: wp-neuroreev
+spec:
+  ports:
+    - port: 3306
+  selector:
+    app: wp-neuroreev
+    tier: mysql
+  clusterIP: None
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: wp-neuroreev-mysql
+  namespace: wp-neuroreev
+  labels:
+    app: wp-neuroreev
+spec:
+  selector:
+    matchLabels:
+      app: wp-neuroreev
+      tier: mysql
+  strategy:
+    type: Recreate
+  template:
+    metadata:
+      labels:
+        app: wp-neuroreev
+        tier: mysql
+    spec:
+      containers:
+      - image: mariadb:latest
+        name: mysql
+        env:
+        - name: MYSQL_ROOT_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: mysqlwp-pass
+              key: password
+        ports:
+        - containerPort: 3306
+          name: mysql
+        volumeMounts:
+        - name: mysql-persistent-storage
+          mountPath: /var/lib/mysql
+      imagePullSecrets:
+      - name: reg-cred-secret    
+      volumes:
+      - name: mysql-persistent-storage
+        persistentVolumeClaim:
+          claimName: mysql-wp-pv-claim

+ 57 - 0
Reevolution/Neuroreevolution/php-deployment.yaml

@@ -0,0 +1,57 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: phpmyadmin-wp-neuroreev
+  namespace: wp-neuroreev
+  labels:
+    app: wp-neuroreev
+spec:
+  selector:
+    app: wp-neuroreev
+    tier: phpmyadmin
+  type: NodePort
+  ports:
+    - name: phpadmin
+      port: 80
+      nodePort: 30184
+      targetPort: phpmyadm
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: phpmyadmin-wp-neuroreev
+  namespace: wp-neuroreev
+  labels:
+    app: wp-neuroreev
+spec:
+  selector:
+    matchLabels:
+      app: wp-neuroreev
+      tier: phpmyadmin
+  strategy:
+    type: Recreate
+  template:
+    metadata:
+      labels:
+        app: wp-neuroreev
+        tier: phpmyadmin
+    spec:
+      containers:
+        - name: phpmyadmin
+          image: phpmyadmin
+          #image: docker-registry:32000/phpmyadmin:1.0
+          ports:
+            - containerPort: 80
+              name: phpmyadm
+          env:
+            - name: PMA_HOST
+              value: wp-neuroreev-mysql
+            - name: PMA_PORT
+              value: "3306"
+            - name: MYSQL_ROOT_PASSWORD
+              valueFrom:
+                secretKeyRef:
+                  name: mysqlwp-pass
+                  key: password
+      imagePullSecrets:
+      - name: reg-cred-secret

+ 14 - 0
Reevolution/Neuroreevolution/pvc-mysql.yaml

@@ -0,0 +1,14 @@
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: mysql-wp-pv-claim
+  namespace: wp-neuroreev
+  labels:
+    app: wp-neuroreev
+spec:
+  accessModes:
+    - ReadWriteOnce
+  resources:
+    requests:
+      storage: 23Gi
+---

+ 14 - 0
Reevolution/Neuroreevolution/pvc-wordpress.yaml

@@ -0,0 +1,14 @@
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: wp-pv-claim
+  namespace: wp-neuroreev
+  labels:
+    app: wp-neuroreev
+spec:
+  accessModes:
+    - ReadWriteOnce
+  resources:
+    requests:
+      storage: 13Gi
+---

+ 65 - 0
Reevolution/Neuroreevolution/wordpress-deployment.yaml

@@ -0,0 +1,65 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: wp-neuroreev
+  namespace: wp-neuroreev
+  labels:
+    app: wp-neuroreev
+spec:
+  type: NodePort
+  ports:
+    - port: 80
+      nodePort: 30090
+      targetPort: wp-neuroreev
+  selector:
+    app: wp-neuroreev
+    tier: frontend
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: wp-neuroreev
+  namespace: wp-neuroreev
+  labels:
+    app: wp-neuroreev
+spec:
+  selector:
+    matchLabels:
+      app: wp-neuroreev
+      tier: frontend
+  strategy:
+    type: Recreate
+  template:
+    metadata:
+      labels:
+        app: wp-neuroreev
+        tier: frontend
+    spec:
+      containers:
+      - image: wordpress
+        name: wp-neuroreev
+        env:
+        - name: WORDPRESS_DB_HOST
+          value: wp-neuroreev-mysql
+        - name: WORDPRESS_DB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: mysqlwp-pass
+              key: password
+        - name: WORDPRESS_DB_USER
+          valueFrom:
+            secretKeyRef:
+              name: mysqlwp-pass
+              key: db_user
+        ports:
+        - containerPort: 80
+          name: wp-neuroreev
+        volumeMounts:
+        - name: wp-neuroreev-persistent-storage
+          mountPath: /var/www/html
+      imagePullSecrets:
+      - name: reg-cred-secret
+      volumes:
+      - name: wp-neuroreev-persistent-storage
+        persistentVolumeClaim:
+          claimName: wp-pv-claim

+ 32 - 0
Reevolution/Neuroreevolution/wordpress-ingress.yaml

@@ -0,0 +1,32 @@
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+  generation: 1
+  managedFields:
+    - apiVersion: networking.k8s.io/v1
+      fieldsType: FieldsV1
+      fieldsV1:
+        f:spec:
+          f:defaultBackend:
+            .: {}
+            f:service:
+              .: {}
+              f:name: {}
+              f:port: {}
+          f:rules: {}
+      manager: rancher
+      operation: Update
+  name: wp-neuroreev
+  namespace: wp-neuroreev
+spec:
+  defaultBackend:
+    service:
+      name: wp-neuroreev
+      port:
+        number: 80
+  ingressClassName: nginx
+  rules:
+    - host: neuroreev.reymota.lab
+status:
+  loadBalancer: {}
+

+ 9 - 0
Reevolution/Neuroreevolution/wordpress-secrets.yaml

@@ -0,0 +1,9 @@
+apiVersion: v1
+kind: Secret
+metadata:
+  name: mysqlwp-pass
+  namespace: wp-neuroreev
+data:
+  password: RHNhLTAyMTM=
+  db_user: cm9vdA==
+  db_passwd: RHNhLTAyMTM=

+ 7 - 0
borraTodo.sh

@@ -0,0 +1,7 @@
+kubectl delete -f mysql-deployment.yaml
+kubectl delete -f wordpress-deployment.yaml
+kubectl delete -f php-deployment.yaml
+kubectl delete -f pvc-mysql.yaml
+kubectl delete -f pvc-wordpress.yaml
+kubectl delete -f wordpress-ingress.yaml
+kubectl delete -f wordpress-secrets.yaml

+ 3 - 0
borraWP.sh

@@ -0,0 +1,3 @@
+kubectl delete -f mysql-deployment.yaml
+kubectl delete -f wordpress-deployment.yaml
+kubectl delete -f php-deployment.yaml

+ 7 - 0
creaTodo.sh

@@ -0,0 +1,7 @@
+kubectl create -f mysql-deployment.yaml
+kubectl create -f wordpress-deployment.yaml
+kubectl create -f php-deployment.yaml
+kubectl create -f pvc-mysql.yaml
+kubectl create -f pvc-wordpress.yaml
+kubectl create -f wordpress-ingress.yaml
+kubectl create -f wordpress-secrets.yaml

+ 3 - 0
creaWP.sh

@@ -0,0 +1,3 @@
+kubectl create -f mysql-deployment.yaml
+kubectl create -f wordpress-deployment.yaml
+kubectl create -f php-deployment.yaml

+ 56 - 0
mysql-deployment.yaml

@@ -0,0 +1,56 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: wordpress-mysql
+  namespace: wordpress
+  labels:
+    app: wordpress
+spec:
+  ports:
+    - port: 3306
+  selector:
+    app: wordpress
+    tier: mysql
+  clusterIP: None
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: wordpress-mysql
+  namespace: wordpress
+  labels:
+    app: wordpress
+spec:
+  selector:
+    matchLabels:
+      app: wordpress
+      tier: mysql
+  strategy:
+    type: Recreate
+  template:
+    metadata:
+      labels:
+        app: wordpress
+        tier: mysql
+    spec:
+      containers:
+      - image: mariadb:latest
+        name: mysql
+        env:
+        - name: MYSQL_ROOT_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: mysqlwp-pass
+              key: password
+        ports:
+        - containerPort: 3306
+          name: mysql
+        volumeMounts:
+        - name: mysql-persistent-storage
+          mountPath: /var/lib/mysql
+      imagePullSecrets:
+      - name: reg-cred-secret    
+      volumes:
+      - name: mysql-persistent-storage
+        persistentVolumeClaim:
+          claimName: mysql-wp-pv-claim

+ 57 - 0
php-deployment.yaml

@@ -0,0 +1,57 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: phpmyadmin-wordpress
+  namespace: wordpress
+  labels:
+    app: wordpress
+spec:
+  selector:
+    app: wordpress
+    tier: phpmyadmin
+  type: NodePort
+  ports:
+    - name: phpadmin
+      port: 80
+      nodePort: 30182
+      targetPort: phpmyadm
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: phpmyadmin-wordpress
+  namespace: wordpress
+  labels:
+    app: wordpress
+spec:
+  selector:
+    matchLabels:
+      app: wordpress
+      tier: phpmyadmin
+  strategy:
+    type: Recreate
+  template:
+    metadata:
+      labels:
+        app: wordpress
+        tier: phpmyadmin
+    spec:
+      containers:
+        - name: phpmyadmin
+          image: phpmyadmin
+          #image: docker-registry:32000/phpmyadmin:1.0
+          ports:
+            - containerPort: 80
+              name: phpmyadm
+          env:
+            - name: PMA_HOST
+              value: wordpress-mysql
+            - name: PMA_PORT
+              value: "3306"
+            - name: MYSQL_ROOT_PASSWORD
+              valueFrom:
+                secretKeyRef:
+                  name: mysqlwp-pass
+                  key: password
+      imagePullSecrets:
+      - name: reg-cred-secret

+ 14 - 0
pvc-mysql.yaml

@@ -0,0 +1,14 @@
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: mysql-wp-pv-claim
+  namespace: wordpress
+  labels:
+    app: wordpress
+spec:
+  accessModes:
+    - ReadWriteOnce
+  resources:
+    requests:
+      storage: 23Gi
+---

+ 14 - 0
pvc-wordpress.yaml

@@ -0,0 +1,14 @@
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: wp-pv-claim
+  namespace: wordpress
+  labels:
+    app: wordpress
+spec:
+  accessModes:
+    - ReadWriteOnce
+  resources:
+    requests:
+      storage: 13Gi
+---

+ 65 - 0
wordpress-deployment.yaml

@@ -0,0 +1,65 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: wordpress
+  namespace: wordpress
+  labels:
+    app: wordpress
+spec:
+  type: NodePort
+  ports:
+    - port: 80
+      nodePort: 30088
+      targetPort: wordpress
+  selector:
+    app: wordpress
+    tier: frontend
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: wordpress
+  namespace: wordpress
+  labels:
+    app: wordpress
+spec:
+  selector:
+    matchLabels:
+      app: wordpress
+      tier: frontend
+  strategy:
+    type: Recreate
+  template:
+    metadata:
+      labels:
+        app: wordpress
+        tier: frontend
+    spec:
+      containers:
+      - image: wordpress
+        name: wordpress
+        env:
+        - name: WORDPRESS_DB_HOST
+          value: wordpress-mysql
+        - name: WORDPRESS_DB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: mysqlwp-pass
+              key: password
+        - name: WORDPRESS_DB_USER
+          valueFrom:
+            secretKeyRef:
+              name: mysqlwp-pass
+              key: db_user
+        ports:
+        - containerPort: 80
+          name: wordpress
+        volumeMounts:
+        - name: wordpress-persistent-storage
+          mountPath: /var/www/html
+      imagePullSecrets:
+      - name: reg-cred-secret
+      volumes:
+      - name: wordpress-persistent-storage
+        persistentVolumeClaim:
+          claimName: wp-pv-claim

+ 32 - 0
wordpress-ingress.yaml

@@ -0,0 +1,32 @@
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+  generation: 1
+  managedFields:
+    - apiVersion: networking.k8s.io/v1
+      fieldsType: FieldsV1
+      fieldsV1:
+        f:spec:
+          f:defaultBackend:
+            .: {}
+            f:service:
+              .: {}
+              f:name: {}
+              f:port: {}
+          f:rules: {}
+      manager: rancher
+      operation: Update
+  name: wordpress
+  namespace: wordpress
+spec:
+  defaultBackend:
+    service:
+      name: wordpress
+      port:
+        number: 80
+  ingressClassName: nginx
+  rules:
+    - host: wordpress.reymota.lab
+status:
+  loadBalancer: {}
+

+ 9 - 0
wordpress-secrets.yaml

@@ -0,0 +1,9 @@
+apiVersion: v1
+kind: Secret
+metadata:
+  name: mysqlwp-pass
+  namespace: wordpress
+data:
+  password: RHNhLTAyMTM=
+  db_user: cm9vdA==
+  db_passwd: RHNhLTAyMTM=