From fee0a2dead4d798930208cd55ad01eb55b49bf1c Mon Sep 17 00:00:00 2001 From: aggarwalakshun Date: Wed, 15 Oct 2025 21:07:40 +0530 Subject: [PATCH 1/2] add nextcloud and collabora config --- .../default/tools/nextcloud/collabora.yml | 32 +++++++++++ .../default/tools/nextcloud/nextcloud-db.yml | 49 +++++++++++++++++ .../tools/nextcloud/nextcloud-secrets.yml | 16 ++++++ .../default/tools/nextcloud/nextcloud-svc.yml | 43 +++++++++++++++ .../default/tools/nextcloud/nextcloud.yml | 54 +++++++++++++++++++ 5 files changed, 194 insertions(+) create mode 100644 clusters/default/tools/nextcloud/collabora.yml create mode 100644 clusters/default/tools/nextcloud/nextcloud-db.yml create mode 100644 clusters/default/tools/nextcloud/nextcloud-secrets.yml create mode 100644 clusters/default/tools/nextcloud/nextcloud-svc.yml create mode 100644 clusters/default/tools/nextcloud/nextcloud.yml diff --git a/clusters/default/tools/nextcloud/collabora.yml b/clusters/default/tools/nextcloud/collabora.yml new file mode 100644 index 0000000..86eaf01 --- /dev/null +++ b/clusters/default/tools/nextcloud/collabora.yml @@ -0,0 +1,32 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: collabora + namespace: tools +spec: + strategy: + type: Recreate + selector: + matchLabels: + app: collabora + template: + metadata: + labels: + app: collabora + spec: + containers: + - name: collabora + image: collabora/code:25.04.6.1.1 + ports: + - containerPort: 9980 + env: + - name: aliasgroup1 + valueFrom: + secretKeyRef: + key: nextcloud-url + name: nextcloud-secrets + securityContext: + capabilities: + add: + - MKNOD diff --git a/clusters/default/tools/nextcloud/nextcloud-db.yml b/clusters/default/tools/nextcloud/nextcloud-db.yml new file mode 100644 index 0000000..86c813e --- /dev/null +++ b/clusters/default/tools/nextcloud/nextcloud-db.yml @@ -0,0 +1,49 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nextcloud-db + namespace: tools +spec: + selector: + matchLabels: + app: nextcloud-db + template: + metadata: + labels: + app: nextcloud-db + spec: + containers: + - name: nextcloud-db + image: mariadb:11.8.3 + ports: + - containerPort: 3306 + env: + - name: MYSQL_ROOT_PASSWORD + valueFrom: + secretKeyRef: + name: nextcloud-secrets + key: root-password + - name: MYSQL_PASSWORD + valueFrom: + secretKeyRef: + name: nextcloud-secrets + key: user-password + - name: MYSQL_DATABASE + value: "nextcloud" + - name: MYSQL_USER + value: "nextcloud" + volumeMounts: + - name: nextcloud-db-storage + mountPath: /var/lib/mysql + - name: nextcloud-db-backup + mountPath: /backup + volumes: + - name: nextcloud-db-storage + nfs: + server: 10.0.0.10 + path: /home/akshun/nextcloud/db + - name: nextcloud-db-backup + nfs: + server: 10.0.0.10 + path: /home/akshun/nextcloud/backup diff --git a/clusters/default/tools/nextcloud/nextcloud-secrets.yml b/clusters/default/tools/nextcloud/nextcloud-secrets.yml new file mode 100644 index 0000000..ab46b68 --- /dev/null +++ b/clusters/default/tools/nextcloud/nextcloud-secrets.yml @@ -0,0 +1,16 @@ +--- +apiVersion: bitnami.com/v1alpha1 +kind: SealedSecret +metadata: + name: nextcloud-secrets + namespace: tools +spec: + encryptedData: + nextcloud-url: AgAFK2JVff1NQ1XnUFX46Gc3WApyDTthYxl4ZPqlA7kVfTe/SjVZbJ6vKid9JjkzAxCvr9JlAZJrA+rLTXvLfxdDhmNRBS1J+OvWFHVdTDmMzk6CUShlNPAEKMZJwiM2fC1MZ0trcwKZJuvm0DT80JqiS65UawfuTQTECVDUkvfVuCL8yxF61AipMDmX0cZt/1f1+CQhRIo4tZhs7MfeWuTNjuFxurySn6GdkZHb91d/zyphSNU/AYi4QnSBIyG8529PrIO9CoNvOVc/YWFuSEpeBZNqiZMOxV+pek1rvvRksCACUMA6xHKXTE7VUyCrjc/v8wZp1tt3R5cM8RJy2t12hzAFkChqNkWRNn1tCoXXHI+YoahV3OGO4qqI1Qn5YGSRgAidQC/JUUa4Jnwp3+ZIrxc4Z3jCAGEOWV5HdhhgeEbVsdUqfuWCkKYf55xQDQt8e8L1XXSo43mNQByQ+OSfwdzx2Y2n8dnumiYaEnwHnim9sJCALrCy3SOUAq4bPs3IwUj9v72IG/9B54dPPoV5l9aGlmJ6Cso2V+Yx5LTyWc4Df5QMHyJTwNBqtwQSXMnzT4NbQ6ven5JW/aDHCYCfgWfcX6wMnkWdgWzo2/9SzHtiIdkGeRuIDdDSKtJEnJk47Kxa2MlDjnRe1kjf4xwWQY2lMYMdZzzcfHwoo0m+5LZCPgHwxJHWPT1HohbxIdsOqeH0ej2hcLjnT7cE9gPoZ76fkLIaTqOREX0kKl91 + root-password: AgCJojDaWQXGAA6Ff6CqH3xRbfiwcrh9EjtdjGP36MfeteOm93dY1GYZkhzjXbgf939oS7p4btcwCfukyQHH6KRvh6JSW7y75CIy2NM0XB5NOPbbexosuD1otbZOmxAlyGuu54wCOWRUzKYIEkWzFlwgtrKp7U3Oc4OAafnttDZNDX4LiY3xKUm1bX9WQaPEk/nNFTwzPY1s9T/UUyZDYbriAKXoHB1/5qE5Cz9pE7y955J6HbPD+9v1fyqib/mKRjVOzRbc5fhxoCL9J84pQ7CcJ7nGvhoC9DdE5xp6OXHjNy14SYzrZYcipLvPbTgjqKIO/F0r/cDEF3HSzAtc975o4LrwLJ+wdGzkzSenxSuPcyTd9aETlJ9s+klOG9rffKLexRRC9JSPoqQFzlKnDGh1uJ7REnLSMwYoCHQvxWvG/Hbk0UNNXQkTyEF+10RtcsO7ZV19CsnhLHaFkL7KYP0Za1YBlqmOaD4Hw6tNNy7EwsCYgg7taT0yXSoaUg801smWrIjBlC7/OiwW6Y6yBF551hZCxitwqusY+k4F+sYS7sL0UXBDkSrgJX8eYe2SuwQYEoIFvfH/PuhGmZ/871RLuR82B1qU1NVO9bL12lctl+OyyGBT7NGoX9kGLunoR0F3tQ8vLa5bLYNoxUAMKwonGRYCfe9FCRstViQjfXIO7wlmuDa5gBF20cMEvI62NVJFanJapAdwPAwE7A== + user-password: AgB25Gn/ANrlFXR3PAXnponCSQDyFnrsyUeJt3PfSSJ4ChOJnWnzrp/5eesozJBl9LtAV17enFnmGgdHIavdyZlrrKUt0tD0lU+g8x+vRatawvc0wghl/0YypqtUmxsCr0tqNS+YH2366/V5WWCnjV3D8cl6aNY68Ya1P8X8aaF1Ya/+XqQnnDYIRAxWSizwLhyGQRU5LYeRMcRfd0pV4ooqohtyrwCJhkL+gM3AL/4d41mYA5C19n6cGN/hHEgD/EhN+oUucUmXxE5M2BXkv7yFXVwZOkkHRK5zdx/weZld/p9lvPFkjVh/jZ6aE7qde77dtPXa/E+fkmx2NztfeKx5tHEbgDy4PPDGcutytBZIgvH1r+0GQZnfEb/vyxBUCDNPDSADkPpm7dFEi8B65uCaFjFvXmDhg4QjKYkYRPUVUK7AzIxV0Iz0YonN1sYT44/wuPxQauHE9rtQD4vM9F51yp15+bu41ktBtPZsTI5n68eXFgZc9N4pQxiQeR4Yk/Mqm2k1nicL1sT0KVQgW5FQdxwyVyXqeyoJhicSWdskHav6JkVyI6j+CQc07kZWmuxKe85ud01oijgLYtF2E0/lJUdwaG7fQIwGK58exsoUmzAJ/mh3SmoZzW/3Jm7AEI19L9TLMt1OeCxRWdF98hsQnZEaBoT1f5H++Zc+JcOirEyZcHnufTQ5SijbI+Gnb05+ZftFtA/mCNl7hg== + template: + metadata: + name: nextcloud-secrets + namespace: tools + type: Opaque diff --git a/clusters/default/tools/nextcloud/nextcloud-svc.yml b/clusters/default/tools/nextcloud/nextcloud-svc.yml new file mode 100644 index 0000000..df37926 --- /dev/null +++ b/clusters/default/tools/nextcloud/nextcloud-svc.yml @@ -0,0 +1,43 @@ +--- +apiVersion: v1 +kind: Service +metadata: + name: nextcloud-service + namespace: tools +spec: + type: LoadBalancer + selector: + app: nextcloud + ports: + - protocol: TCP + port: 9200 + targetPort: 443 + +--- +apiVersion: v1 +kind: Service +metadata: + name: collabora-service + namespace: tools +spec: + type: LoadBalancer + selector: + app: collabora + ports: + - protocol: TCP + port: 9980 + targetPort: 9980 + +--- +apiVersion: v1 +kind: Service +metadata: + name: nextcloud-db-service + namespace: tools +spec: + selector: + app: nextcloud-db + ports: + - protocol: TCP + port: 3306 + targetPort: 3306 diff --git a/clusters/default/tools/nextcloud/nextcloud.yml b/clusters/default/tools/nextcloud/nextcloud.yml new file mode 100644 index 0000000..f619f80 --- /dev/null +++ b/clusters/default/tools/nextcloud/nextcloud.yml @@ -0,0 +1,54 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nextcloud + namespace: default +spec: + strategy: + type: Recreate + selector: + matchLabels: + app: nextcloud + template: + metadata: + labels: + app: nextcloud + spec: + initContainers: + - name: wait-for-db + image: busybox + command: + - sh + - -c + - | + until nc -z -v -w30 nextcloud-db-service 3306; do + echo "Waiting for database to be ready..." + sleep 2 + done + containers: + - name: nextcloud + image: lscr.io/linuxserver/nextcloud:32.0.0 + ports: + - containerPort: 443 + env: + - name: PGID + value: "1000" + - name: PUID + value: "1000" + - name: TZ + value: "Asia/Kolkata" + volumeMounts: + - name: nextcloud-data + mountPath: /data + - name: nextcloud-config + mountPath: /config + volumes: + - name: nextcloud-data + nfs: + path: /home/akshun/nextcloud/data + server: 10.0.0.10 + - name: nextcloud-config + nfs: + path: /home/akshun/nextcloud/config + server: 10.0.0.10 -- 2.49.1 From 89fe7664e470386f84993d23b6086cd37a99b2b4 Mon Sep 17 00:00:00 2001 From: aggarwalakshun Date: Wed, 15 Oct 2025 21:08:50 +0530 Subject: [PATCH 2/2] ns correction --- clusters/default/tools/nextcloud/nextcloud.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/clusters/default/tools/nextcloud/nextcloud.yml b/clusters/default/tools/nextcloud/nextcloud.yml index f619f80..05e688c 100644 --- a/clusters/default/tools/nextcloud/nextcloud.yml +++ b/clusters/default/tools/nextcloud/nextcloud.yml @@ -3,7 +3,7 @@ apiVersion: apps/v1 kind: Deployment metadata: name: nextcloud - namespace: default + namespace: tools spec: strategy: type: Recreate -- 2.49.1