You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Given the below environment, all pods are started correctly but the installer doesn't go through and throws those warnings (navigating to https://cloud.example.com):
"Cannot create or write into the data directory /opt/nextcloud/data"
nextcloud.datadir is set
nextcloud.configs.pre-installation tries to create the dir & make it accessable for the webserver's user
"You chose SQLite as database. SQLite should only be used for minimal and development instances. For production we recommend a different database backend. If you use clients for file syncing, the use of SQLite is highly discouraged."
internalDatabase is disabled
externalDatabase is configured
mariadb is configured (pointing to the same secret as externalDatabase)
Logs and Errors
Pods are fine
Describe your Environment
Kubernetes distribution: k3s
Helm Version: v3.14.4
Helm Chart Version: 5.5.2
MariaDB Version: 18.2.0 (using Bitnami sub)
values.yaml:
## Official nextcloud image version## ref: https://hub.docker.com/r/library/nextcloud/tags/##image:
repository: nextcloudflavor: fpm # default is generated by flavor and appVersiontag: #29.0.4pullPolicy: IfNotPresent# Number of replicas to be deployedreplicaCount: 1ingress:
enabled: "true"className: traefikannotations:
traefik.ingress.kubernetes.io/router.middlewares: kube-system-nextcloud-headers@kubernetescrd,kube-system-nextcloud-redirectregex@kubernetescrd,kube-system-nextcloud-uploadlimit@kubernetescrdlabels: {}path: /pathType: PrefixphpClientHttpsFix:
enabled: trueprotocol: httpsnextcloud:
host: example.comexistingSecret:
enabled: truesecretName: nextcloud-secretusernameKey: NC_USERNAMEpasswordKey: NC_PASSWORDsmtpUsernameKey: SMTP_USERNAMEsmtpPasswordKey: SMTP_PASSWORDsmtpHostKey: SMTP_HOSTupdate: 0containerPort: 80datadir: /opt/nextcloud/datamail:
enabled: truefromAddress: namedomain: example.comsmtp:
host:
valueFrom:
secretKeyRef:
name: nextcloud-secretvalue: SMTP_HOSTsecure: ''port: 587authtype: LOGINname:
valueFrom:
secretKeyRef:
name: nextcloud-secretvalue: SMTP_USERNAMEpassword:
valueFrom:
secretKeyRef:
name: nextcloud-secretvalue: SMTP_PASSWORDphpConfigs:
# zz-opcache.ini: |-# [opcache]# opcache.memory_consumption=256# opcache.interned_strings_buffer=8# opcache.max_accelerated_files=4000# opcache.revalidate_freq=60# opcache.fast_shutdown=1# opcache.enable_cli=1# opcache.jit = 1255# opcache.jit_buffer_size = 128M# zz-memory_limit.ini: |-# memory_limit=1024M# upload_max_filesize = 16G# post_max_size = 16G# max_input_time 7200# max_execution_time 7200# upload_tmp_dir = /opt/tmp/ # output_buffering = 0defaultConfigs:
# To protect /var/www/html/config.htaccess: true# Redis default configurationredis.config.php: true# Apache configuration for rewrite urls#apache-pretty-urls.config.php: true# Define APCu as local cacheapcu.config.php: true# Apps directory configsapps.config.php: true# Used for auto configure databaseautoconfig.php: true# SMTP default configurationsmtp.config.php: trueconfigs:
# custom.config.php: |-# <?php# $CONFIG = array (# 'maintenance_window_start' => 2# );# previews.config.php: |-# <?php# $CONFIG = array (# 'enable_previews' => true,# 'enabledPreviewProviders' => array (# 'OC\Preview\Movie',# 'OC\Preview\PNG',# 'OC\Preview\JPEG',# 'OC\Preview\GIF',# 'OC\Preview\BMP',# 'OC\Preview\XBitmap',# 'OC\Preview\MP3',# 'OC\Preview\MP4',# 'OC\Preview\TXT',# 'OC\Preview\MarkDown',# 'OC\Preview\PDF'# ),# );# proxy.config.php: |-# <?php# $CONFIG = array (# 'trusted_proxies' => array(# 0 => '127.0.0.1',# 1 => '10.0.0.0/8',# 2 => 'traefik.kube-system',# ),# 'forwarded_for_headers' => array('HTTP_X_FORWARDED_FOR'),# );hooks:
pre-installation:
create_datadir: |- sudo mkdir /opt/nextcloud/data && sudo chown -R www-data:www-data /opt/nextcloud/datapost-installation:
pre-upgrade:
post-upgrade:
before-starting:
strategy:
type: RecreateextraInitContainers: []extraSidecarContainers: []extraVolumes:
extraVolumeMounts:
securityContext: {}podSecurityContext: {}mariaDbInitContainer:
securityContext: {}postgreSqlInitContainer:
securityContext: {}nginx:
enabled: trueimage:
repository: nginxtag: alpinepullPolicy: IfNotPresentcontainerPort: 80config:
default: trueresources: {}securityContext: {}extraEnv:
- name: TRUSTED_PROXIESvalue: traefik.kube-systeminternalDatabase:
enabled: falsename: nextcloudexternalDatabase:
enabled: truetype: mysqlexistingSecret:
enabled: truesecretName: nextcloud-mysql-secretusernameKey: mariadb-usernamepasswordKey: mariadb-passworddatabaseKey: mariadb-databasemariadb:
enabled: trueauth:
database: nextcloudusername: nextcloudexistingSecret: nextcloud-mysql-secretarchitecture: standaloneclusterDomain: smith.cloud primary:
persistence:
enabled: trueexistingClaim: nextcloud-mysql-pvcstorageClass: longhorn-staticaccessMode: ReadWriteOncesize: 4Giredis:
enabled: trueauth:
enabled: trueexistingSecret: nextcloud-secretexistingSecretPasswordKey: REDIS_PASSWORDclusterDomain: smith.cloudarchitecture: replicationmaster:
persistence:
size: 4Gi replica:
replicaCount: 2persistence:
size: 4Gi cronjob:
enabled: trueresources: {}lifecycle: {}securityContext: {}service:
type: ClusterIPport: 8080loadBalancerIP: ""nodePort: nilpersistence:
enabled: trueannotations: {}existingClaim: nextcloud-webroot-pvcaccessMode: ReadWriteOncesize: 20GinextcloudData:
enabled: truesubPath:
annotations: {}existingClaim: nextcloud-data-pvcaccessMode: ReadWriteOncesize: 100Giresources: {}livenessProbe:
enabled: trueinitialDelaySeconds: 10periodSeconds: 10timeoutSeconds: 5failureThreshold: 3successThreshold: 1readinessProbe:
enabled: trueinitialDelaySeconds: 10periodSeconds: 10timeoutSeconds: 5failureThreshold: 3successThreshold: 1startupProbe:
enabled: trueinitialDelaySeconds: 30periodSeconds: 10timeoutSeconds: 5failureThreshold: 60successThreshold: 1## Enable pod autoscaling using HorizontalPodAutoscaler## ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/##hpa:
enabled: falsecputhreshold: 60minPods: 1maxPods: 10nodeSelector: {}tolerations: []affinity: {}## Prometheus Exporter / Metrics##metrics:
enabled: falsereplicaCount: 1# Optional: becomes NEXTCLOUD_SERVER env var in the nextcloud-exporter container.# Without it, we will use the full name of the nextcloud serviceserver: ""# The metrics exporter needs to know how you serve Nextcloud either http or httpshttps: false# Use API token if set, otherwise fall back to password authentication# https://github.com/xperimental/nextcloud-exporter#token-authentication# Currently you still need to set the token manually in your nextcloud installtoken: ""timeout: 5s# if set to true, exporter skips certificate verification of Nextcloud server.tlsSkipVerify: falseinfo:
# Optional: becomes NEXTCLOUD_INFO_APPS env var in the nextcloud-exporter container.# Enables gathering of apps-related metrics. Defaults to falseapps: falseimage:
repository: xperimental/nextcloud-exportertag: 0.6.2pullPolicy: IfNotPresent# pullSecrets:# - myRegistrKeySecretName## Metrics exporter resource requests and limits## ref: http://kubernetes.io/docs/user-guide/compute-resources/### resources: {}## Metrics exporter pod Annotation and Labels# podAnnotations: {}# podLabels: {}service:
type: ClusterIP## Use serviceLoadBalancerIP to request a specific static IP,## otherwise leave blank# loadBalancerIP:annotations:
prometheus.io/scrape: "true"prometheus.io/port: "9205"labels: {}## Prometheus Operator ServiceMonitor configuration##serviceMonitor:
## @param metrics.serviceMonitor.enabled Create ServiceMonitor Resource for scraping metrics using PrometheusOperator##enabled: false## @param metrics.serviceMonitor.namespace Namespace in which Prometheus is running##namespace: ""## @param metrics.serviceMonitor.namespaceSelector The selector of the namespace where the target service is located (defaults to the release namespace)namespaceSelector:
## @param metrics.serviceMonitor.jobLabel The name of the label on the target service to use as the job name in prometheus.##jobLabel: ""## @param metrics.serviceMonitor.interval Interval at which metrics should be scraped## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#endpoint##interval: 30s## @param metrics.serviceMonitor.scrapeTimeout Specify the timeout after which the scrape is ended## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#endpoint##scrapeTimeout: ""## @param metrics.serviceMonitor.labels Extra labels for the ServiceMonitor##labels: {}rbac:
enabled: falseserviceaccount:
create: truename: nextcloud-serviceaccountannotations: {}## @param securityContext for nextcloud pod @deprecated Use `nextcloud.podSecurityContext` insteadsecurityContext: {}
Additional context, if any
Persistence uses manually created PVCs via Lognhorn.
The text was updated successfully, but these errors were encountered:
The Docker image hooks do not run as root. You can't do this. They're mostly for doing things like running occ commands to set config parameters/etc or install/enable/disable Nextcloud apps.
Your entire problem goes away if you just use the default data directory. But I presume you're intentionally trying to use something other than the default for a specific reason?
Describe your Issue
Given the below environment, all pods are started correctly but the installer doesn't go through and throws those warnings (navigating to https://cloud.example.com):
Logs and Errors
Pods are fine
Describe your Environment
Kubernetes distribution: k3s
Helm Version: v3.14.4
Helm Chart Version: 5.5.2
MariaDB Version: 18.2.0 (using Bitnami sub)
values.yaml
:Additional context, if any
Persistence uses manually created PVCs via Lognhorn.
The text was updated successfully, but these errors were encountered: