diff --git a/Firefly/k8s-cluster/copyDBK8S b/Firefly/k8s-cluster/copyDBK8S new file mode 100755 index 00000000..764548e3 --- /dev/null +++ b/Firefly/k8s-cluster/copyDBK8S @@ -0,0 +1,21 @@ +# Backup date + +today=$(date "+%Y_%m_%d-%H_%M_%S") + +echo "Current date: $today" + +# build up filename + +# destination folder (change to your own needs) + +BACKUP_FOLDER=/tmp + +file_name=$BACKUP_FOLDER/bkup_fireflyiii +new_name=$file_name-$today.sql +echo "Backup file name: " "$new_name" + +docker exec `docker container ls | grep mysql_firefly | cut -f1 -d' '` /usr/bin/mysqldump -u root --password=Rey-1176 fireflyiii > $new_name + +message="Backup stored "$today + +sudo -u creylopez echo $message | mail -s "FireflyIII backup finished" "creylopez@yahoo.es" -A $new_name diff --git a/Firefly/k8s-cluster/creaTodo.sh b/Firefly/k8s-cluster/creaTodo.sh new file mode 100755 index 00000000..f1579640 --- /dev/null +++ b/Firefly/k8s-cluster/creaTodo.sh @@ -0,0 +1,4 @@ +kubectl create -f pv-local-ff.yaml +kubectl create -f pv-local-mysql.yaml +kubectl create -k ./ +watch kubectl get all -n firefly diff --git a/Firefly/k8s-cluster/firefly-deployment.yaml b/Firefly/k8s-cluster/firefly-deployment.yaml index 9932b2ff..f163545e 100644 --- a/Firefly/k8s-cluster/firefly-deployment.yaml +++ b/Firefly/k8s-cluster/firefly-deployment.yaml @@ -7,7 +7,7 @@ metadata: app: firefly-iii spec: accessModes: - - ReadWriteMany + - ReadWriteOnce storageClassName: "" resources: requests: @@ -52,7 +52,7 @@ spec: tier: frontend spec: containers: - - image: jc5x/firefly-iii:latest + - image: fireflyiii/core:latest name: firefly-iii env: - name: APP_ENV diff --git a/Firefly/k8s-cluster/mysql-deployment.yaml b/Firefly/k8s-cluster/mysql-deployment.yaml index d2fcb337..bce00a13 100644 --- a/Firefly/k8s-cluster/mysql-deployment.yaml +++ b/Firefly/k8s-cluster/mysql-deployment.yaml @@ -7,7 +7,7 @@ metadata: app: firefly-iii spec: accessModes: - - ReadWriteMany + - ReadWriteOnce storageClassName: "" resources: requests: diff --git a/Firefly/k8s-cluster/paraTodo.sh b/Firefly/k8s-cluster/paraTodo.sh new file mode 100755 index 00000000..4cba2724 --- /dev/null +++ b/Firefly/k8s-cluster/paraTodo.sh @@ -0,0 +1,3 @@ +kubectl delete -k ./ +kubectl delete -f pv-local-ff.yaml +kubectl delete -f pv-local-mysql.yaml diff --git a/Firefly/k8s-cluster/php-deployment.yaml b/Firefly/k8s-cluster/php-deployment.yaml index 8bc5e37e..042053a6 100644 --- a/Firefly/k8s-cluster/php-deployment.yaml +++ b/Firefly/k8s-cluster/php-deployment.yaml @@ -38,7 +38,7 @@ spec: spec: containers: - name: phpmyadmin - image: arm64v8/phpmyadmin + image: phpmyadmin ports: - containerPort: 80 name: phpmyadm diff --git a/Firefly/k8s-cluster/pv-local-ff.yaml b/Firefly/k8s-cluster/pv-local-ff.yaml new file mode 100644 index 00000000..6708ab54 --- /dev/null +++ b/Firefly/k8s-cluster/pv-local-ff.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: data-firefly-iii +spec: + capacity: + storage: 10Gi + accessModes: + - ReadWriteOnce + hostPath: + path: "/mnt/cluster/fireflyiii/firefly-uploads" diff --git a/Firefly/k8s-cluster/pv-local-mysql.yaml b/Firefly/k8s-cluster/pv-local-mysql.yaml new file mode 100644 index 00000000..9e189263 --- /dev/null +++ b/Firefly/k8s-cluster/pv-local-mysql.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: data-firefly-iii-mysql +spec: + capacity: + storage: 20Gi + accessModes: + - ReadWriteOnce + hostPath: + path: "/mnt/cluster/fireflyiii/firefly-uploads" diff --git a/Lets/lets-configmap.yaml b/Lets/lets-configmap.yaml new file mode 100644 index 00000000..b5f2e563 --- /dev/null +++ b/Lets/lets-configmap.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: nginx-config +data: + default.conf: | + server { + listen 80; + listen [::]:80; + server_name _; + location / { + add_header Content-Type text/plain; # Prevents download + return 200 "Hello world! Kubernetes + Let's encrypt demo."; + } + } + diff --git a/Lets/lets-deployment.yaml b/Lets/lets-deployment.yaml new file mode 100644 index 00000000..0fdddb4b --- /dev/null +++ b/Lets/lets-deployment.yaml @@ -0,0 +1,31 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: lets + labels: + app: lets +spec: + selector: + matchLabels: + app: lets + tier: frontend + replicas: 1 + template: + metadata: + labels: + app: lets + tier: frontend + spec: + containers: + - name: lets + image: nginx + ports: + - containerPort: 80 + volumeMounts: + - name: nginx-configs + mountPath: /etc/nginx/conf.d + # Load the configuration files for nginx + volumes: + - name: nginx-configs + configMap: + name: nginx-config diff --git a/Lets/lets-ingress.yaml b/Lets/lets-ingress.yaml new file mode 100644 index 00000000..c928a53c --- /dev/null +++ b/Lets/lets-ingress.yaml @@ -0,0 +1,17 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: "kubernetes-demo-app-ingress-service" +spec: + rules: + - host: kubernetes-letsencrypt.crey.fail # CHANGE ME! + http: + paths: + # The * is needed so that all traffic gets redirected to nginx + - path: /* + pathType: Prefix + backend: + service: + name: lets + port: + number: 80 diff --git a/Lets/lets-service.yaml b/Lets/lets-service.yaml new file mode 100644 index 00000000..e912b511 --- /dev/null +++ b/Lets/lets-service.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: Service +metadata: + name: lets +spec: + type: NodePort + selector: + app: lets + ports: + - protocol: "TCP" + port: 80 + nodePort: 30380 diff --git a/NextCloud/collabora-deployment.yaml b/NextCloud/collabora-deployment.yaml new file mode 100755 index 00000000..3834efa3 --- /dev/null +++ b/NextCloud/collabora-deployment.yaml @@ -0,0 +1,43 @@ +apiVersion: v1 +kind: Service +metadata: + name: code-server + namespace: nextcloud + labels: + app: code +spec: + selector: + pod-label: code-server-pod + type: NodePort + ports: + - port: 9980 + nodePort: 30389 + targetPort: code +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: code-server + namespace: nextcloud + labels: + app: code +spec: + replicas: 1 + selector: + matchLabels: + pod-label: code-server-pod + template: + metadata: + labels: + pod-label: code-server-pod + spec: + containers: + - name: code + image: collabora/code + env: + - name: extra_params + value: --o:ssl.enable=false + ports: + - containerPort: 9980 + name: code + diff --git a/NextCloud/creaTodo.sh b/NextCloud/creaTodo.sh index 8972793c..81bfeaca 100755 --- a/NextCloud/creaTodo.sh +++ b/NextCloud/creaTodo.sh @@ -1,3 +1,3 @@ -kubectl create -f pv-nextcloud.yaml +kubectl create -f pv-local-nextcloud.yaml kubectl create -k ./ -kubectl get all -n nextcloud +watch kubectl get all -n nextcloud diff --git a/NextCloud/paraTodo.sh b/NextCloud/paraTodo.sh index 9b73df9d..1bc875e6 100755 --- a/NextCloud/paraTodo.sh +++ b/NextCloud/paraTodo.sh @@ -1,2 +1,2 @@ kubectl delete -k ./ -kubectl delete -f pv-nextcloud.yaml +kubectl delete -f pv-local-nextcloud.yaml diff --git a/NextCloud/pv-local-nextcloud.yaml b/NextCloud/pv-local-nextcloud.yaml new file mode 100644 index 00000000..15c324d2 --- /dev/null +++ b/NextCloud/pv-local-nextcloud.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: nextcloud +spec: + capacity: + storage: 50Gi + accessModes: + - ReadWriteOnce + hostPath: + path: "/mnt/cluster/nextcloud" diff --git a/Nginx/pv-local-nginx.yaml b/Nginx/pv-local-nginx.yaml new file mode 100644 index 00000000..aafadf1e --- /dev/null +++ b/Nginx/pv-local-nginx.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: www-nginx-folder +spec: + capacity: + storage: 2Gi + accessModes: + - ReadWriteMany + hostPath: + path: "/mnt/cluster/nginx" diff --git a/Wordpress/creaTodo.sh b/Wordpress/creaTodo.sh old mode 100644 new mode 100755 index 33286dc2..286979f5 --- a/Wordpress/creaTodo.sh +++ b/Wordpress/creaTodo.sh @@ -1,3 +1,4 @@ -kubectl create -f pv-mysql.yaml -kubectl create -f pv-wordpress.yaml +kubectl create -f pv-local-mysql.yaml +kubectl create -f pv-local-wordpress.yaml kubectl create -k ./ +watch kubectl get all -n wordpress diff --git a/Wordpress/kustomization.yaml b/Wordpress/kustomization.yaml index f097a0e2..8603c787 100644 --- a/Wordpress/kustomization.yaml +++ b/Wordpress/kustomization.yaml @@ -6,6 +6,7 @@ secretGenerator: - db_user=root - db_passwd=Dsa-0213 resources: + - wp-namespace.yaml - mysql-deployment.yaml - wordpress-deployment.yaml - php-deployment.yaml diff --git a/Wordpress/mysql-deployment.yaml b/Wordpress/mysql-deployment.yaml index 40998260..5a7a4751 100755 --- a/Wordpress/mysql-deployment.yaml +++ b/Wordpress/mysql-deployment.yaml @@ -22,7 +22,7 @@ metadata: app: wordpress spec: accessModes: - - ReadWriteMany + - ReadWriteOnce resources: requests: storage: 20Gi diff --git a/Wordpress/paraTodo.sh b/Wordpress/paraTodo.sh old mode 100644 new mode 100755 index f447b1fb..b6a57b7a --- a/Wordpress/paraTodo.sh +++ b/Wordpress/paraTodo.sh @@ -1,3 +1,3 @@ kubectl delete -k ./ -kubectl delete -f pv-mysql.yaml -kubectl delete -f pv-wordpress.yaml +kubectl delete -f pv-local-mysql.yaml +kubectl delete -f pv-local-wordpress.yaml diff --git a/Wordpress/php-deployment.yaml b/Wordpress/php-deployment.yaml index 09d8294d..3c202684 100644 --- a/Wordpress/php-deployment.yaml +++ b/Wordpress/php-deployment.yaml @@ -38,7 +38,7 @@ spec: spec: containers: - name: phpmyadmin - image: arm64v8/phpmyadmin + image: phpmyadmin ports: - containerPort: 80 name: phpmyadm diff --git a/Wordpress/pv-local-mysql.yaml b/Wordpress/pv-local-mysql.yaml new file mode 100644 index 00000000..b3fcc55e --- /dev/null +++ b/Wordpress/pv-local-mysql.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: wp-data +spec: + capacity: + storage: 20Gi + accessModes: + - ReadWriteOnce + hostPath: + path: "/mnt/cluster/wordpress/wordpress-db" diff --git a/Wordpress/pv-local-wordpress.yaml b/Wordpress/pv-local-wordpress.yaml new file mode 100644 index 00000000..d6d44b76 --- /dev/null +++ b/Wordpress/pv-local-wordpress.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: wp-folder +spec: + capacity: + storage: 10Gi + accessModes: + - ReadWriteOnce + hostPath: + path: "/mnt/cluster/wordpress/wordpress-wp" + diff --git a/Wordpress/wordpress-deployment.yaml b/Wordpress/wordpress-deployment.yaml index a038a45d..b4e35e89 100755 --- a/Wordpress/wordpress-deployment.yaml +++ b/Wordpress/wordpress-deployment.yaml @@ -24,7 +24,7 @@ metadata: app: wordpress spec: accessModes: - - ReadWriteMany + - ReadWriteOnce storageClassName: "" resources: requests: diff --git a/Wordpress/wp-namespace.yaml b/Wordpress/wp-namespace.yaml new file mode 100644 index 00000000..d75fbe15 --- /dev/null +++ b/Wordpress/wp-namespace.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: wordpress