# cloud.limbosolutions.com Welcome to public repository of [https://cloud.limbosolutions.com](https://cloud.limbosolutions.com) Using [NextCloud](https://nextcloud.com/) - [Integrations](#integrations) - [OAuth2/OpenID Provider](#oauth2openid-provider) - [cli](#cli) - [maintenance mode](#maintenance-mode) - [scan files](#scan-files) - [preview generator](#preview-generator) - [repair tree](#repair-tree) - [Repair AppData Cache (Fix App Store 500 Error)](#repair-appdata-cache-fix-app-store-500-error) - [force create indexes](#force-create-indexes) - [Mimetype migrations available](#mimetype-migrations-available) - [delete file locks](#delete-file-locks) - [Setup and Deploy](#setup-and-deploy) - [App](#app) - [Infra](#infra) - [Database](#database) ## Integrations ### OAuth2/OpenID Provider - - - ## cli ``` bash su -s /bin/bash www-data -c "php occ upgrade;" ``` ### maintenance mode ``` bash su -s /bin/bash www-data -c "php -d memory_limit=-1 /var/www/html/occ maintenance:mode --on;" su -s /bin/bash www-data -c "php -d memory_limit=-1 /var/www/html/occ maintenance:mode --off" ``` ### scan files ``` bash su -s /bin/bash www-data -c "php -d memory_limit=-1 /var/www/html/occ files:scan --all" ``` ### preview generator ``` bash su -s /bin/bash www-data -c "./occ preview:generate-all -vvv" su -s /bin/bash www-data -c "./occ preview:generate-all --path=marcio.fernandes/files/Photos -vvv" ``` ``` bash # cron job php /var/www/nextcloud/occ preview:pre-generate ``` ### repair tree ``` bash su -s /bin/bash www-data -c "php occ files:repair-tree" ``` ### Repair AppData Cache (Fix App Store 500 Error) When the App Store returns HTTP 500, the cause is usually stale filecache entries pointing to missing files inside appdata_*. This procedure clears the broken cache and forces Nextcloud to rebuild it. ```bash # Enable maintenance mode su -s /bin/bash www-data -c "php occ maintenance:mode --on;" # Remove stale filecache entries (run inside MariaDB) mariadb -u root -p nextcloud -e "DELETE FROM oc_filecache WHERE path LIKE 'appdata_ocuihfjhxkga/appstore%';" # Remove corrupted appdata folder rm -rf /var/www/html/data/appdata_* # Disable maintenance mode su -s /bin/bash www-data -c "php occ maintenance:mode --off" # Rebuild appdata and caches su -s /bin/bash www-data -c "php occ maintenance:repair" ``` ### force create indexes ```bash # Rebuild appdata and caches su -s /bin/bash www-data -c "php occ db:add-missing-indices" ``` ### Mimetype migrations available ```bash # Rebuild appdata and caches su -s /bin/bash www-data -c "php occ maintenance:repair --include-expensive" ``` ### delete file locks ``` bash # execute on mariadb DELETE FROM oc_file_locks WHERE 1; ``` ## Setup and Deploy ### App **Security context:** This script is intended to be executed only by low‑privilege deployment identities, such as the **continuous‑deploy** ServiceAccount or an application maintainer with equivalent permissions. ```bash ./ops-scripts/apply-app.sh ``` **Responsibilities:** - Database deployment - Persistent Volume Claims (storage.limbosolutions.com) - Nextcloud Helm chart deployment - Backup job deployment **Requirements:** - [infra](#infra) ### Infra **Security context:** This script requires elevated cluster‑level permissions and must be executed only by platform maintainers, not by the continuous‑deploy identity. ```bash ./ops-scripts/apply-infra.sh ``` **Responsibilities:** - Ingress controller deployment - Persistent storage provisioning (storage.limbosolutions.com) - services accounts: - Continuous deploy - Deployment RBAC (ServiceAccount + Role + RoleBinding) ## Database **Connect to db:** ``` bash kubectl exec -it nextcloud-mariadb-0 -- mariadb -u nextcloud -h nextcloud-mariadb.cloud-limbosolutions-com.svc.cluster.local -p ``` **Restore database:** ``` bash kubectl run mysql-client -i --rm \ --image=mysql:latest --restart=Never -- \ mysql -h nextcloud-mariadb.cloud-limbosolutions-com.svc.cluster.local \ -u ???? -p???? nextcloud < ./tmp/host-nextcloud-full-backup.sql ```