Upstream operator

Now that Postgres is running, we can deploy our Nextcloud.

But first we need to deploy the nextcloud upstream operator. This operator is low level because it would need every information about the backing services. It is a nice building block for projects like

Here is the version alpha we are developing. The goal is to move it’s development upstream. We think that this belongs to Nextcloud community to own this. And we’ll help bootstrap that. The same way we did with some official docker images.

Here is how the Nextcloud instance object would look like:

cat << EOF | kubectl apply -f -
apiVersion: ""
kind: nextcloud
  name: cloud
  namespace: fight-marketing
    endpoint: nextcloud-postgres
    secret: nextcloud-postgres-secret
    size: 1Gi
  numberOfInstances: 2

After some minutes, you’d get an up and running Nextcloud instance. behind the scene it would have provisionned the following:

  • the deployment with 2 pods with a php container with Nextcloud code
  • a cron job
  • a web container to serve static assets
  • an ingress with a Let’s Encrypt certificate
  • installed Nextcloud

Upstream operators are already nice you’d say. But keep in mind that we are discussing about 7 backing services. So for each Nextcloud instance, you’d need to do the plumbing manually of each backing service manually. Let’s go now to the operator.