nextcloud helm

No introduction found. Create it?

Install

Install with:

helm repo add nextcloud oci://ghcr.io/bjw-s-labs/charts/
helm install nextcloud nextcloud/nextcloud -f values.yaml

Examples

See examples from other people.

Top Repositories (3 out of 17)

NameRepoStarsVersionTimestamp
nextcloudbjw-s-labs/home-ops8679.4.18 days ago
nextcloudharaldkoch/kochhaus-home1809.4.113 days ago
nextclouddrag0n141/home-ops669.4.1a month ago

Values

See the most popular values for this chart:

KeyTypes
boolean
string
string
string
string
number
number
number
boolean
string
string
string
number
string
string
boolean
number
string
string
string
number
string
boolean
string
boolean
string
number
boolean
string
string
string
string
string
string
nextcloud.host (14)
cloud.${SECRET_DOMAIN}
string
boolean
string
string
string, number
string
string
nextcloud.mail.smtp.host (5)
smtp-relay.default.svc.cluster.local
string
string
string
nextcloud.extraEnv[].name (11)
REDIS_HOST
REDIS_HOST_PORT
string
nextcloud.extraEnv[].valueFrom.secretKeyRef.key (8)
REDIS_HOST
REDIS_HOST_PORT
OIDC_CLIENT_ID
OIDC_CLIENT_SECRET
OIDC_ISSUER
string
nextcloud.extraEnv[].valueFrom.secretKeyRef.name (8)
nextcloud-secret
nextcloud-secret
nextcloud-secret
nextcloud-secret
nextcloud-secret
string
nextcloud.extraEnv[].value (7)
nextcloud-dragonfly.default.svc
6379
string
nextcloud.extraInitContainers[].image (11)
ghcr.io/home-operations/postgres-init:18
string
string
string
nextcloud.extraInitContainers[].command[] (3)
- touch
- /usr/local/etc/php/conf.d/redis-session.ini
string
string
string
number
number
string
string
string
nextcloud.extraVolumes[].nfs.server (3)
nas01.${SECRET_DOMAIN_INT}
string
number
string
string
string
string
nextcloud.extraVolumeMounts[].subPath (3)
before-starting.sh
redis-session.ini
string
boolean
nextcloud.configs."misc.config.php" (7)
<?php $CONFIG = array ( 'default_phone_region' => 'PL', 'maintenance_window_start' => 2, ); ?>
string
nextcloud.configs."proxy.config.php" (7)
<?php $CONFIG = array ( 'trusted_proxies' => array( 0 => '127.0.0.1', 1 => '10.43.0.0/16', 1 => '10.0.0.0/16', ), 'forwarded_for_headers' => array('HTTP_X_FORWARDED_FOR'), ); ?>
string
nextcloud.configs."local.config.php" (6)
<?php $CONFIG = array ( 'trusted_proxies' => array ( 0 => '127.0.0.1', 1 => '${K8S_CLUSTER_CIDR}', 2 => '${K8S_SERVICE_CIDR}', ), 'forwarded_for_headers' => array ( 0 => 'HTTP_X_FORWARDED_FOR', ), 'overwrite.cli.url' => 'https://nextcloud.${SECRET_DOMAIN}', // Collabora's internal callbacks use HTTP; public and CLI URLs remain HTTPS. 'overwriteprotocol' => ($_SERVER['HTTP_HOST'] ?? '') === 'nextcloud.default.svc.cluster.local:8080' ? 'http' : 'https', 'quota_include_external_storage' => 'false', 'skeletondirectory' => '', 'knowledgebaseenabled' => 'false', 'maintenance_window_start' => '20', 'enable_previews' => false, 'trashbin_retention_obligation' => 'auto, 30', 'auth.bruteforce.protection.enabled' => true, );
string
nextcloud.configs."oidc.config.php" (4)
<?php $CONFIG = array ( 'allow_user_to_change_display_name' => false, 'lost_password_link' => 'disabled', 'oidc_login_provider_url' => 'https://auth.${SECRET_DOMAIN}', 'oidc_login_client_id' => getenv('NEXTCLOUD_OAUTH_CLIENT_ID'), 'oidc_login_client_secret' => getenv('NEXTCLOUD_OAUTH_CLIENT_SECRET'), 'oidc_login_auto_redirect' => false, 'oidc_login_end_session_redirect' => false, 'oidc_login_button_text' => 'Log in with Authelia', 'oidc_login_hide_password_form' => false, 'oidc_login_use_id_token' => false, 'oidc_login_attributes' => array ( 'id' => 'preferred_username', 'name' => 'name', 'mail' => 'email', 'groups' => 'groups', 'is_admin' => 'is_nextcloud_admin', ), 'oidc_login_default_group' => 'oidc', 'oidc_login_use_external_storage' => false, 'oidc_login_scope' => 'openid profile email groups nextcloud_userinfo', 'oidc_login_proxy_ldap' => false, 'oidc_login_disable_registration' => true, 'oidc_login_redir_fallback' => false, 'oidc_login_tls_verify' => true, 'oidc_create_groups' => false, 'oidc_login_webdav_enabled' => false, 'oidc_login_password_authentication' => false, 'oidc_login_public_key_caching_time' => 86400, 'oidc_login_min_time_between_jwks_requests' => 10, 'oidc_login_well_known_caching_time' => 86400, 'oidc_login_update_avatar' => false, 'oidc_login_code_challenge_method' => 'S256' ); ?>
string
nextcloud.configs."redis.config.php" (4)
<?php $CONFIG = array( 'memcache.distributed' => '\OC\Memcache\Redis', 'memcache.locking' => '\OC\Memcache\Redis', 'redis' => array( 'host' => getenv('REDIS_HOST'), 'port' => getenv('REDIS_HOST_PORT') ?: 6379, 'dbindex' => getenv('REDIS_DATABASE') ?: 0, 'password' => getenv('REDIS_PASSWORD'), ), );
string
nextcloud.configs."sso.config.php" (3)
<?php $CONFIG = array ( 'oidc_login_provider_url' => 'https://authelia.${SECRET_DOMAIN}', 'oidc_login_client_id' => 'nextcloud', 'oidc_login_client_secret' => getenv('NEXTCLOUD_OAUTH_CLIENT_SECRET'), 'oidc_login_button_text' => 'Log in with Authelia', 'oidc_login_attributes' => array ( 'id' => 'preferred_username', 'name' => 'name', 'mail' => 'email', ), 'oidc_login_scope' => 'openid profile email', 'oidc_login_disable_registration' => true, 'oidc_login_password_authentication' => true, 'oidc_login_end_session_on_logout' => true, );
string
nextcloud.configs."collabora.config.php" (2)
<?php $CONFIG = array ( 'richdocuments' => array( 'wopi_url' => 'https://${SECRET_CLOUD_COLLABORA_DOMAIN}', ), );
string
nextcloud.configs."ingress.config.php" (2)
<?php $CONFIG = array ( 'overwrite.cli.url' => 'https://cloud.${SECRET_DOMAIN}', 'overwriteprotocol' => 'https', );
string
nextcloud.configs."logging.config.php" (2)
<?php $CONFIG = array ( 'log_type' => 'file', 'logfile' => '/var/www/html/data/nextcloud.log', 'loglevel' => 1, 'logdateformat' => 'F d, Y H:i:s' );
string
nextcloud.configs."bulkupload.config.php" (1)
<?php $CONFIG = array ( 'bulkupload.enabled' => false, );
string
nextcloud.configs."caching.config.php" (1)
<?php $CONFIG = array ( 'memcache.local' => '\\OC\\Memcache\\APCu', 'memcache.distributed' => '\\OC\\Memcache\\Redis', 'memcache.locking' => '\\OC\\Memcache\\Redis', 'filelocking.enabled' => true, 'redis' => array( 'host' => 'dragonfly.database.svc.cluster.local', 'port' => 6379, 'timeout' => 0.0, 'password' => '', ), );
string
nextcloud.configs."custom.config.php" (1)
<?php $CONFIG = array ( 'overwriteprotocol' => 'https', 'overwrite.cli.url' => 'https://cloud.${SECRET_DOMAIN}', 'overwritehost' => 'cloud.${SECRET_DOMAIN}', 'filelocking.enabled' => 'true', 'default_phone_region' => 'DE', 'loglevel' => '2', 'enable_previews' => true, 'log_type' => 'syslog', 'maintenance_window_start' => 1, 'upgrade.disable-web' => false, 'trusted_proxies' => array ( 0 => '127.0.0.1', 1 => '10.42.0.0/16', 2 => '10.43.0.0/16', ), );
string
nextcloud.configs."gitops.config.php" (1)
<?php $CONFIG = array ( 'appstoreenabled' => true, 'mail_domain' => '${SECRET_DOMAIN}', );
string
nextcloud.configs."notify_push.config.php" (1)
<?php $CONFIG = array ( 'notify_push' => array( 'base_endpoint' => 'https://${SECRET_CLOUD_DOMAIN}/push', ), );
string
nextcloud.configs."office.config.php" (1)
<?php $CONFIG = array ( 'allow_local_remote_servers' => true, 'trusted_domains' => array ( 'nextcloud.${SECRET_DOMAIN}', 'nextcloud.default.svc.cluster.local', ), );
string
nextcloud.configs."preview.config.php" (1)
<?php $CONFIG = array ( 'enabledPreviewProviders' => array( 'OC\Preview\PNG', 'OC\Preview\JPEG', 'OC\Preview\GIF', 'OC\Preview\BMP', 'OC\Preview\XBitmap', 'OC\Preview\MP3', 'OC\Preview\TXT', 'OC\Preview\MarkDown', 'OC\Preview\OpenDocument', 'OC\Preview\Krita', 'OC\Preview\HEIC', ), );
string
nextcloud.phpConfigs."uploadLimit.ini" (7)
upload_max_filesize = 16G post_max_size = 16G max_input_time = 3600 max_execution_time = 3600
string
nextcloud.phpConfigs."www.conf" (6)
[www] user = www-data group = www-data listen = 127.0.0.1:9000 pm = dynamic pm.max_children = 57 pm.start_servers = 14 pm.min_spare_servers = 14 pm.max_spare_servers = 42 pm.max_requests = 500 pm.process_idle_timeout = 10s
string
nextcloud.phpConfigs."zzz-pool.conf" (1)
[www] pm = dynamic pm.max_children = 30 pm.start_servers = 6 pm.min_spare_servers = 3 pm.max_spare_servers = 12 pm.max_requests = 500
string
boolean
boolean
nextcloud.hooks.before-starting (4)
# disable unneceserry apps for appname in activity circles systemtags federation privacy \ nextcloud_announcements announcementcenter support survey_client \ user_status weather_status dashboard do php occ app:disable "$appname" done
string
nextcloud.hooks.post-upgrade (2)
# based on https://github.com/nextcloud/all-in-one/blob/25c580bca370eaead5f1fad9d3842a9c49562dff/Containers/nextcloud/entrypoint.sh#L451-L457 php occ maintenance:repair --include-expensive php occ db:add-missing-indices php occ db:add-missing-columns php occ db:add-missing-primary-keys
string
nextcloud.hooks.post-installation (1)
printf "Add missing DB indices\n" php occ db:add-missing-indices
string
number, string
boolean
number, string
string
string
boolean
number
nextcloud.lifecycle.postStartCommand[] (2)
- /bin/sh
- -c
- cd /var/www/html; ./occ maintenance:repair --include-expensive; ./occ db:add-missing-indices; /bin/true
string
string
nextcloud.extraSidecarContainers[].command[] (1)
- /var/www/html/custom_apps/notify_push/bin/x86_64/notify_push
- /var/www/html/config/config.php
string
string
nextcloud.extraSidecarContainers[].env[].value (1)
http://nextcloud.self-hosted.svc:8080
7867
string
string
string
number
string
string
string
string
string
string
string
boolean
boolean
string
boolean
string
nextcloud.objectStorage.s3.host (1)
minio.storage.svc.cluster.local
string
number
string
string
boolean
string
string
string
boolean
string
boolean
string
boolean
string
string
persistence.config.advancedMounts.nextcloud.app[].path (2)
/usr/local/etc/php-fpm.d/zz-tuning.conf
/var/www/html/config/eurooffice.config.php
string
boolean
string
persistence.config.advancedMounts.nextcloud.cron[].path (2)
/var/www/html/config/eurooffice.config.php
string
boolean
string
string
boolean
string
persistence.config.name (2)
nextcloud-configmap
string
string
string
string
persistence.data.path (2)
/mnt/tank/Nextcloud
string
persistence.data.server (2)
horrea-10.${SECRET_DOMAIN}
string
string
string
string
persistence.hooks.advancedMounts.nextcloud.app[].path (2)
/docker-entrypoint-hooks.d/before-starting/whiteboard.sh
/docker-entrypoint-hooks.d/post-upgrade/post-upgrade.sh
string
boolean
string
number
persistence.hooks.name (2)
nextcloud-configmap
string
string
string
string
string
boolean
string
boolean
string
string
string
string
string
string
string
string
string
string
string
string
persistence.config-file.globalMounts[].path (1)
/var/www/html/config/custom.config.php
/usr/local/etc/php/conf.d/php.ini
/usr/local/etc/php-fpm.d/www.conf
/etc/apache2/conf-available/remoteip.conf
string
persistence.config-file.globalMounts[].subPath (1)
custom.config.php
php.ini
www.conf
remoteip.conf
string
string
string
string
string
string
boolean
boolean
string
string
string
string
string
string
string
externalDatabase.host (9)
postgres-lb.database.svc.cluster.local.
string
boolean
boolean
string
string
string
nginx.image.repository (3)
mirror.gcr.io/library/nginx
string
string
nginx.config.headers.Strict-Transport-Security (2)
max-age=15552000; includeSubDomains; preload;
string
boolean
boolean
number
number
number
number
number
string
image.tag (8)
35.0.2-fpm-alpine
string
image.repository (4)
library/nextcloud
string
string
string
boolean
string
string
string
ingress.annotations."nginx.ingress.kubernetes.io/cors-allow-headers" (1)
X-Forwarded-For, X-Real-IP, X-Frame-Options, X-Content-Type-Options, X-Forwarded-Proto
string
string
string
string
ingress.annotations."nginx.ingress.kubernetes.io/server-snippet" (1)
server_tokens off; proxy_hide_header X-Powered-By; 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; }
string
ingress.className (1)
nginx-internal
string
ingress.tls[].hosts[] (1)
- nc.${SECRET_DOMAIN}
string
string
string
string
string
number
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
controllers.nextcloud.containers.app.env.POSTGRES_HOST (2)
postgres-rw.databases.svc.cluster.local
string
string
string
string
string
string
string
string
string
string
controllers.nextcloud.containers.app.image.tag (3)
35.0.2-fpm-alpine@sha256:83a9c44d3f738527258cd9bec0da768d78f381176e7d822ee48c2654db5e3179
string
boolean
boolean
number
number
number
string
string
string
number
boolean
boolean
number
number
number
string
string
string
number
boolean
number
number
number
boolean
string
string
string
boolean
string
boolean
controllers.nextcloud.containers.cron.command[] (2)
- sh
- -c
- trap 'exit 0' TERM INT # php-fpm only listens once the entrypoint finished installing/upgrading until php -r 'exit(@fsockopen("127.0.0.1", 9000) ? 0 : 1);'; do sleep 10 & wait $! done while true; do php -f /var/www/html/cron.php sleep 300 & wait $! done
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
controllers.nextcloud.containers.cron.image.tag (2)
35.0.2-fpm-alpine@sha256:83a9c44d3f738527258cd9bec0da768d78f381176e7d822ee48c2654db5e3179
string
string
string
string
boolean
string
boolean
string
string
controllers.nextcloud.containers.nginx.image.tag (2)
1.31.7-alpine@sha256:378d0c32f6562f7fd9629170797f57d2b953aa09be983b3daaf4809bb039ca00
string
boolean
boolean
number
number
boolean
boolean
string
string
string
number
number
number
string
string
string
boolean
string
boolean
controllers.nextcloud.containers.push.command[] (2)
- sh
- -c
- trap 'kill -TERM $pid 2>/dev/null; exit 0' TERM INT bin=/var/www/html/custom_apps/notify_push/bin/x86_64/notify_push # Only exists once the app is installed from the app store until [ -x "$bin" ]; do sleep 30 & wait $! done sum=$(md5sum "$bin") "$bin" /var/www/html/config/config.php & pid=$! # App updates replace the binary, so exit to restart on the new one while kill -0 "$pid" 2>/dev/null; do sleep 60 & wait $! if [ "$(md5sum "$bin" 2>/dev/null)" != "$sum" ]; then echo "notify_push binary changed, restarting" kill -TERM "$pid" wait "$pid" exit 0 fi done wait "$pid"
string
string
string
string
string
string
string
string
controllers.nextcloud.containers.push.image.tag (2)
35.0.2-fpm-alpine@sha256:83a9c44d3f738527258cd9bec0da768d78f381176e7d822ee48c2654db5e3179
string
string
string
string
boolean
string
boolean
string
string
controllers.nextcloud.initContainers.01-init-db.image.tag (2)
18@sha256:b6d3af974df781c673d37e49bdddfa14a6f5be28b18d2cb7713f0449bea4057b
string
controllers.nextcloud.initContainers.02-php-conf.command[] (2)
- sh
- -c
- cp -R /usr/local/etc/php/conf.d/. /conf.d/
string
string
controllers.nextcloud.initContainers.02-php-conf.image.tag (2)
35.0.2-fpm-alpine@sha256:83a9c44d3f738527258cd9bec0da768d78f381176e7d822ee48c2654db5e3179
string
boolean
string
boolean
controllers.nextcloud.initContainers.copy-config.command[] (1)
- sh
- -c
- cp -r /usr/src/nextcloud/config/*.php /var/www/html/config/
string
string
controllers.nextcloud.initContainers.copy-config.image.tag (1)
35.0.2@sha256:6b015097ca6c30f97d172365f886c27f865e16f8e6ac2d1e80bc1433bc2580da
string
boolean
string
boolean
number
string
number
boolean
number
boolean
httpRoute.hostnames[] (3)
- files.bjw-s.dev
string
string
string
string
string
string
string
string
string
string
boolean
boolean
boolean
boolean
string
string
redis.host (1)
nextcloud-valkey.selfhosted.svc.cluster.local
string
number
route.app.hostnames[] (3)
- cloud.${SECRET_DOMAIN}
string
string
string
string
string
string
string
string
string
string
route.app.annotations."gatus.home-operations.com/endpoint" (1)
url: https://storage.hyde.services/cron.php
string
string
number
string
route.app.rules[].filters[].responseHeaderModifier.add[].value (1)
max-age=31536000; includeSubDomains; preload
string
string
number
string
string
string
boolean
externalRedis.host (2)
nextcloud-dragonfly
string
number, string
string
boolean
number
number
number
number
number
boolean
string
boolean
number
number
number
number
number
configMaps.config.data."custom.config.php" (1)
<?php $CONFIG = array( 'overwriteprotocol' => 'https', 'overwrite.cli.url' => 'https://storage.hyde.services', 'overwritehost' => 'storage.hyde.services', 'check_data_directory_permissions' => false, 'default_phone_region' => 'AU', 'trusted_proxies' => array( 0 => '127.0.0.1', 1 => '10.42.0.0/16', ), 'trusted_domains' => array( 0 => '127.0.0.1', 1 => 'storage.hyde.services', ), 'simpleSignUpLink.shown' => false, 'cache_path' => '/cache', 'forwarded_for_headers' => array('X-Forwarded-For'), 'maintenance_window_start' => 100, 'memcache.distributed' => '\OC\Memcache\Redis', 'memcache.locking' => '\OC\Memcache\Redis', 'redis' => array( 'host' => 'dragonfly.databases.svc.cluster.local', 'port' => 6379, 'dbindex' => 1, ), );
string
configMaps.config.data."php.ini" (1)
session.save_handler = redis session.save_path = "tcp://dragonfly.databases.svc.cluster.local:6379/1" redis.session.locking_enabled = 1 redis.session.lock_retries = -1 redis.session.lock_wait_time = 10000 upload_max_filesize = 16G post_max_size = 16G memory_limit = 512M max_execution_time = 3600
string
configMaps.config.data."remoteip.conf" (1)
RemoteIPHeader X-Forwarded-For RemoteIPInternalProxy 10.42.0.0/16
string
configMaps.config.data."www.conf" (1)
[www] listen = 127.0.0.1:9000 pm = dynamic pm.max_children = 50 pm.start_servers = 12 pm.min_spare_servers = 6 pm.max_spare_servers = 18
string
extraManifests[] (1)
- apiVersion: v1 kind: Service metadata: name: nextcloud-push labels: app.kubernetes.io/name: {{ include "nextcloud.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} spec: type: ClusterIP ports: - name: push port: 7867 targetPort: 7867 protocol: TCP selector: app.kubernetes.io/name: {{ include "nextcloud.name" . }} app.kubernetes.io/instance: {{ .Release.Name }}
string
string
string
string
string