5.6 Nextcloud
Nextcloud ist eine Open-Source-Software für Filehosting und Kollaboration, die es ermöglicht, Dateien zu speichern, zu synchronisieren und mit anderen zu teilen. Sie bietet Funktionen wie Kalender, Kontakte, Aufgabenverwaltung und vieles mehr, um die Zusammenarbeit und Produktivität zu verbessern. Diese Software wird als private Cloud auf dem Cluster deployed.
Es wurden zwei Deployment values.yaml definiert. Eines dient als Testinstanz, welche zum Beispiel für das Testen einer neuen Version verwendet werden kann und eine SQLite-Datenbank verwendet. Aber auch eine Produktionsinstanz, welche eine eigene PostgreSQL-Datenbank neben den Applikations-Pods hat.
Erstellung eines ArgoCD Projekts
- Setze den aktuellen Namespace auf argocd.
kubectl config set-context --current --namespace=argocd
- Erstellen einer ArgoCD Application/Projekt
# INT
kubectl apply -f https://raw.githubusercontent.com/Cloud-native-engineering/sem04_k8s/refs/heads/main/nextcloud-int/nextcloud-application.yaml
# PROD
kubectl apply -f https://raw.githubusercontent.com/Cloud-native-engineering/sem04_k8s/refs/heads/main/nextcloud/nextcloud-application.yaml
- Create K8s Secrets, follow the documentation in the GitOps definition for the APP
- PROD: nextcloud
- INT: nextcloud-int
- Sync the ArgoCD Application (CLI or UI)