47 lines
1.6 KiB
Bash
Executable File
47 lines
1.6 KiB
Bash
Executable File
#!/bin/sh
|
|
set -e
|
|
|
|
OCC="php /var/www/html/occ"
|
|
|
|
# Wait for database
|
|
sleep 5
|
|
|
|
# Disable unnecessary apps
|
|
$OCC app:disable dashboard || true
|
|
$OCC app:disable weather_status || true
|
|
$OCC app:disable firstrunwizard || true
|
|
$OCC app:disable recommendations || true
|
|
$OCC app:disable survey_client || true
|
|
|
|
# Enable needed apps
|
|
$OCC app:enable files || true
|
|
$OCC app:enable calendar || true
|
|
$OCC app:enable contacts || true
|
|
$OCC app:enable groupfolders || true
|
|
$OCC app:enable user_oidc || true
|
|
|
|
# Configure OIDC (Authentik)
|
|
$OCC config:app:set user_oidc --value="1" allow_multiple_user_backends
|
|
$OCC user_oidc:provider Authentik \
|
|
--clientid="${NC_OIDC_CLIENT_ID:-${OIDC_CLIENT_ID:-ulti-nextcloud}}" \
|
|
--clientsecret="${NC_OIDC_CLIENT_SECRET:-${OIDC_CLIENT_SECRET:-changeme}}" \
|
|
--discoveryuri="${NC_OIDC_DISCOVERY_URL:-${OIDC_DISCOVERY_URL:-http://nginx/auth/application/o/nextcloud/.well-known/openid-configuration}}" \
|
|
--unique-uid=1 \
|
|
--check-bearer=1 \
|
|
--mapping-uid=preferred_username \
|
|
--mapping-email=email \
|
|
--mapping-displayname=name || true
|
|
|
|
# Performance tuning
|
|
$OCC config:system:set memcache.local --value='\OC\Memcache\APCu'
|
|
$OCC config:system:set memcache.distributed --value='\OC\Memcache\Redis'
|
|
$OCC config:system:set memcache.locking --value='\OC\Memcache\Redis'
|
|
$OCC config:system:set redis host --value='keydb'
|
|
$OCC config:system:set redis port --value='6379' --type=integer
|
|
$OCC config:system:set default_phone_region --value='FR'
|
|
|
|
# Disable theming/UI since we use headless
|
|
$OCC config:system:set skeletondirectory --value=''
|
|
|
|
echo "Nextcloud initialization complete."
|