image: repository: nextcloud flavor: apache tag: "33" pullPolicy: Always replicaCount: 1 livenessProbe: initialDelaySeconds: 60 periodSeconds: 60 timeoutSeconds: 5 failureThreshold: 6 readinessProbe: initialDelaySeconds: 60 periodSeconds: 60 timeoutSeconds: 5 failureThreshold: 12 # ------------------------------------------------------------------------------ # Nextcloud maintenance mode & Kubernetes probes # ------------------------------------------------------------------------------ # When performing upgrades or running `occ upgrade`, Nextcloud may return 503 # on /status.php until the database migration is complete. During this period, # Kubernetes will repeatedly kill the pod because the readiness/liveness probes # fail before the upgrade finishes. # # To prevent Kubernetes from terminating the pod during maintenance or upgrades, # temporarily disable both probes. This allows the container to stay alive long # enough for you to exec into it and run: # # php occ upgrade # # After the upgrade completes, re‑enable the probes. # # Example: # # livenessProbe: # enabled: false # # readinessProbe: # enabled: false # ------------------------------------------------------------------------------ internalDatabase: enabled: false mariadb: enabled: false externalDatabase: enabled: true type: mysql host: nextcloud-mariadb.cloud-limbosolutions-com.svc.cluster.local user: "???" password: "???" database: "???" port: 3306 persistence: enabled: true accessMode: ReadWriteOnce size: 8Gi nextcloudData: accessMode: ReadWriteOnce size: 8Gi resources: limits: cpu: "1" memory: 3000Mi requests: cpu: "0.5" memory: 512Mi ## Cronjob to execute Nextcloud background tasks ## ref: https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/background_jobs_configuration.html#cron ## cronjob: enabled: true nextcloud: extraInitContainers: - name: data-folder-structure-fix image: busybox command: - sh - -c - | # Create only parents mkdir -p /mnt/users mkdir -p /mnt/shared # Fix permissions on parents pvc folder data-folder-structure chown 33:33 /mnt/users chown 33:33 /mnt/shared chown 33:33 /mnt/users/marcio.fernandes chown 33:33 /mnt/users/marcio.fernandes/Documents chown 33:33 /mnt/users/marcio.fernandes/Photos chown 33:33 /mnt/shared/Gaming chown 33:33 /mnt/shared/Music chown 33:33 /mnt/shared/Videos chown 33:33 /mnt/shared/NerdStuff volumeMounts: - name: data-folder-structure mountPath: /mnt - name: mf-nextcloud mountPath: /mnt/users/marcio.fernandes - name: mf-documents mountPath: /mnt/users/marcio.fernandes/Documents - name: mf-photos mountPath: /mnt/users/marcio.fernandes/Photos - name: media-gaming mountPath: /mnt/shared/Gaming - name: media-music mountPath: /mnt/shared/Music - name: media-videos mountPath: /mnt/shared/Videos - name: it-storage mountPath: /mnt/shared/NerdStuff securityContext: runAsUser: 33 runAsGroup: 33 fsGroup: 33 fsGroupChangePolicy: "OnRootMismatch" phpConfigs: php.ini: |- memory_limit = 512M extraVolumes: - name: mf-documents persistentVolumeClaim: claimName: mf-documents-limbosolutions-com - name: mf-photos persistentVolumeClaim: claimName: mf-gallery-limbosolutions-com - name: media-gaming persistentVolumeClaim: claimName: media-gaming-limbosolutions-com - name: media-music persistentVolumeClaim: claimName: media-music-limbosolutions-com - name: media-videos persistentVolumeClaim: claimName: media-videos-limbosolutions-com - name: it-storage persistentVolumeClaim: claimName: it-storage-limbosolutions-com - name: mf-nextcloud persistentVolumeClaim: claimName: mf-nextcloud-limbosolutions-com - name: data-folder-structure emptyDir: {} extraVolumeMounts: - name: data-folder-structure mountPath: /mnt - name: mf-nextcloud mountPath: /mnt/users/marcio.fernandes - name: mf-documents mountPath: /mnt/users/marcio.fernandes/Documents - name: mf-photos mountPath: /mnt/users/marcio.fernandes/Photos - name: media-gaming mountPath: /mnt/shared/Gaming - name: media-music mountPath: /mnt/shared/Music - name: media-videos mountPath: /mnt/shared/Videos - name: it-storage mountPath: /mnt/shared/NerdStuff configs: global.config.php: |- true, ); phone.config.php: |- 'PT', ); https.config.php: |- 'cloud.limbosolutions.com', 'overwrite.cli.url' => 'https://cloud.limbosolutions.com', 'overwriteprotocol' => 'https', 'trusted_proxies' => array ( 0 => '127.0.0.1', 1 => '::1', 2 => '10.0.0.0/8', ), ); # A value of 1 e.g. will only run these background jobs between 01:00am UTC and 05:00am UTC: # https://docs.nextcloud.com/server/30/admin_manual/configuration_server/background_jobs_configuration.html maintenance.config.php: |- 1, ); onlyoffice.config.php: |- array ( 'verify_peer_off' => true, 'allow_local_remote_servers' => true, 'allow_external_storage' => true, ), ); ingress: enabled: false