VSHN Managed Nextcloud on Kubernetes
Problem
We need to provide Nextcloud on Kubernetes with the following features:
-
Possibility to Single Sign-On with Keycloak
-
Nextcloud Office with Collabora on backend
-
PostgreSQL as database
-
Extensions management
-
Full lifecycle of an application: deploy, update, backup, restore, monitoring, scaling, etc.
Solutions
-
Helm chart available for Nextcloud: github.com/nextcloud/helm
-
Writing our own provider-nextcloud
Analysis - Helm Chart
The Nextcloud Helm Chart is a good starting point. It is actively maintained and has the needed features. Additionally, it is the official Helm Chart for Nextcloud.
Nextcloud provides: github.com/nextcloud/all-in-one docker image, which contains a lot of features including Office package.
k8up or similar solution needs to be used for backup and restore management. A custom solution needs to be provided for extension management. A not-official helm chart exists for Office extension: open.greenhost.net/stackspin/nextcloud
- Advantages
-
-
Official Helm Chart
-
Actively maintained
-
Supports various databases, metrics, persistance, ingress, some basic rbac
-
- Disadvantages
-
-
Several topics need to be handled manually:
-
Maintenance
-
Backup and restore
-
Extension management
-
Office package deployment and integration
-
-
Analysis - Custom Provider
Writing our own provider gives the most flexibility. All the needed features could be directly implemented and integrated into the existing solutions. Potentially more features could be handled than the official Helm Chart supports.
- Advantages
-
-
Full Flexibility over deployment, backup, restore, monitoring, scaling, etc.
-
VSHN would be the first to offer a Nextcloud provider for Kubernetes - unique marketing opportunity
-
- Disadvantages
-
-
High development effort
-
Time consuming
-
High risk of introducing bugs
-