nextcloud / nextcloud/helm

Nextcloud Helm Chart not working with JuiceFS

Open
#711 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

support
Dominant language
Go Template
Stars
534
Forks
314
Avg merge
42m
Merged PRs (30d)
1

Description

Describe your Issue

I'm trying to install Nextcloud Helm Charts with JuiceFS as persistence, but Nextcloud can't initialize. I can go inside the container, the volume is mounted normally, folders and files are created inside, but nothing else happens, no logs anymore.

Logs and Errors

kubectl logs:

Initializing nextcloud 30.0.5.1 ...

Describe your Environment

  • Kubernetes distribution: v1.26.5
  • Helm Version: 3.15.3
  • Helm Chart Version: 6.6.3
  • values.yaml:
replicaCount: 1

ingress:
  enabled: true
  className: nginx
  annotations:
    nginx.ingress.kubernetes.io/proxy-body-size: 100G
    nginx.ingress.kubernetes.io/affinity: cookie
    nginx.ingress.kubernetes.io/enable-cors: "true"
    nginx.ingress.kubernetes.io/cors-allow-headers: "X-Forwarded-For"
    cert-manager.io/cluster-issuer: "http01-issuer"
    nginx.ingress.kubernetes.io/server-snippet: |-
      server_tokens off;
      proxy_hide_header X-Powered-By;
      rewrite ^/.well-known/webfinger /index.php/.well-known/webfinger last;
      rewrite ^/.well-known/nodeinfo /index.php/.well-known/nodeinfo last;
      rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
      rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json;
      location = /.well-known/carddav {
        return 301 $scheme://$host/remote.php/dav;
      }
      location = /.well-known/caldav {
        return 301 $scheme://$host/remote.php/dav;
      }
      location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
      }
      location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
        deny all;
      }
      location ~ ^/(?:autotest|occ|issue|indie|db_|console) {
        deny all;
      }

  tls:
    - secretName: nextcloud-tls
      hosts:
        - nextcloud-test.example.com
  labels: {}
  path: /
  pathType: Prefix

nextcloud:
  host: nextcloud-test.example.com
  objectStore:
    s3:
      enabled: true
      accessKey: ""
      secretKey: ""
      legacyAuth: false
      host: "s3.example.com"
      ssl: true
      port: "443"
      region: "eu-west-1"
      bucket: "nextcloud"
      prefix: ""
      usePathStyle: false
      autoCreate: false
      storageClass: "STANDARD"
      sse_c_key: ""
      existingSecret: ""
      secretKeys:
        host: ""
        accessKey: ""
        secretKey: ""
        bucket: ""
        sse_c_key: ""

externalDatabase:
  enabled: true
  type: postgresql
  host: ""
  user: nextcloud
  password: ""
  database: nextcloud
  existingSecret:
    enabled: true
    secretName: nextcloud-db-app
    usernameKey: username
    passwordKey: password
    hostKey: host
    databaseKey: dbname

persistence:
  enabled: true
  annotations: {}
  storageClass: "juicefs-csi"
  accessMode: ReadWriteOnce
  size: 8Gi
  nextcloudData:
    enabled: false
    subPath:
    annotations: {}
    accessMode: ReadWriteOnce
    size: 8Gi

Additional context, if any

If accessMode is set to ReadWriteMany nothing changes.
Other storageclasses work without problems, including geesefs, which works fine but is very slow.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the deployment with the reported Helm values, Kubernetes v1.26.5, chart 6.6.3, and the JuiceFS storage class. Inspect the Nextcloud initialization logs after the reported halt and compare the behavior with the working geesefs storage class. Done means identifying whether the failure is in the chart configuration or JuiceFS integration and recording a verified resolution.

Written by the indexing model from the issue text.

Assessment

Tech stack
helm, kubernetes, postgresql
Domain
cloud, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.