Nextcloud: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Rkr (Diskussion | Beiträge) |
Rkr (Diskussion | Beiträge) K →Talk |
||
(46 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 12: | Zeile 12: | ||
*https://docs.nextcloud.org | *https://docs.nextcloud.org | ||
*https://help.nextcloud.com | *https://help.nextcloud.com | ||
*Version scannen: https://scan.nextcloud.com | |||
Apps: | Apps: | ||
Zeile 23: | Zeile 24: | ||
**https://www.linux-magazin.de/news/nextcloud-17-mit-neuen-features-und-services/ | **https://www.linux-magazin.de/news/nextcloud-17-mit-neuen-features-und-services/ | ||
**https://www.pro-linux.de/news/1/27480/nextcloud-17-f%C3%83%C2%BChrt-remote-wipe-ein.html | **https://www.pro-linux.de/news/1/27480/nextcloud-17-f%C3%83%C2%BChrt-remote-wipe-ein.html | ||
*Nextcloud mit Docker auf NAS: siehe c't 10/18 S.142 | |||
*[https://www.pro-linux.de/artikel/2/1988/nextcloud-erfolgreich-einf%C3%BChren-checklisten-f%C3%BCr-ihre-organisation.html Nextcloud erfolgreich einführen: Checklisten für Ihre Organisation] (pro-linux.de) | *[https://www.pro-linux.de/artikel/2/1988/nextcloud-erfolgreich-einf%C3%BChren-checklisten-f%C3%BCr-ihre-organisation.html Nextcloud erfolgreich einführen: Checklisten für Ihre Organisation] (pro-linux.de) | ||
*Einsatz mit Kubernetes / k3s , siehe c't 09/20 S.26, [[ct:yq1e] | *Einsatz mit Kubernetes / k3s , siehe c't 09/20 S.26, [[ct:yq1e]] | ||
*Nextcloud-Instanz per Docker der c't: https://github.com/psct/ctnextcloud | |||
*[http://heise.de/-4727074 Nextcloud stellt High-Performance Back-End unter Open-Source-Lizenz] | |||
== Collabora Online == | == Collabora Online == | ||
Zeile 32: | Zeile 37: | ||
*[https://www.collaboraoffice.com/code/ CODE] | *[https://www.collaboraoffice.com/code/ CODE] | ||
*https://hub.docker.com/r/collabora/code/ | *https://hub.docker.com/r/collabora/code/ | ||
*https://help.nextcloud.com/t/nextcloud-collabora-integration/151879 | |||
*siehe iX 02/17 S.54 | *siehe iX 02/17 S.54 | ||
*https://nextcloud.com/blog/how-to-install-collabora-online-in-nextcloud-hub/ | |||
*https://collabora-online-for-nextcloud.readthedocs.io/en/latest/install/ | |||
*https://sdk.collaboraonline.com/docs/installation/CODE_Docker_image.html | |||
Tipps: | Tipps: | ||
*Nach Update muss man manchmal die Einstellung der URL in "Collabora Online Server" erneut speichern. | *Nach Update muss man manchmal die Einstellung der URL in "Collabora Online Server" erneut speichern. | ||
Release Notes: | |||
*https://www.collaboraoffice.com/code-22-05-release-notes/ (CODE) | |||
*https://www.collaboraoffice.com/collabora-online-22-05-release-notes/ | |||
== Only Office == | == Only Office == | ||
*[https://nextcloud.com/blog/how-to-install-onlyoffice-in-nextcloud-hub-and-new-integration-feature/ How to install ONLYOFFICE in Nextcloud Hub and new integration feature] | *[https://nextcloud.com/blog/how-to-install-onlyoffice-in-nextcloud-hub-and-new-integration-feature/ How to install ONLYOFFICE in Nextcloud Hub and new integration feature] | ||
*[https://www.onlyoffice.com/de/all-connectors.aspx Konnektoren] | *[https://www.onlyoffice.com/de/all-connectors.aspx Konnektoren] | ||
*siehe c't 11/20 S.128 | |||
*Nachteile gegenüber Collabora | *Nachteile gegenüber Collabora | ||
**Bei geteilten Links ist der Editor immer "Anonym". Man kann keinen Namen setzen. | **Bei geteilten Links ist der Editor immer "Anonym". Man kann keinen Namen setzen. | ||
**Chat und Videokonferenz via Nextcloud nicht möglich im Kontext des Dokuments. | **Chat und Videokonferenz via Nextcloud nicht möglich im Kontext des Dokuments. | ||
**Muss manuell geflusht werden, damit Änderungen im Cache in Datei geschrieben wird, z.B. per Cron | |||
occ documentserver:flush | |||
**speichert nicht zuverlässig; Änderungen aus verschiedenen Sessions gehen verloren, https://github.com/nextcloud/documentserver_community/issues/100 | |||
== Talk == | |||
*Praxis-Bericht siehe c't 14/20 S.154, http://ct.de/yz7k | |||
*[https://nextcloud.com/blog/how-federated-chat-works-in-nextcloud-talk/ How federated chat works in Nextcloud Talk] | |||
== Mail == | |||
*https://github.com/nextcloud/mail/blob/master/doc/admin.md | |||
==Andere Erweiterungen== | ==Andere Erweiterungen== | ||
Zeile 53: | Zeile 77: | ||
**https://www.pro-linux.de/news/1/27197/nextcloud-stellt-kollaborativen-texteditor-vor.html | **https://www.pro-linux.de/news/1/27197/nextcloud-stellt-kollaborativen-texteditor-vor.html | ||
**https://www.pro-linux.de/artikel/2/1978/nextcloud-text-ein-etherpad-ersatz-f%C3%83%C2%BCr-alle.html | **https://www.pro-linux.de/artikel/2/1978/nextcloud-text-ein-etherpad-ersatz-f%C3%83%C2%BCr-alle.html | ||
*Deck | |||
**https://nextcloud.com/blog/nextcloud-deck-1-0-available-today-plus-deck-for-android/ | |||
*Group Folders: Für gemeinsame Verzeichnisstruktur, siehe c't 11/20 S.129 | |||
*Umfragen mit Nextcloud Forms: https://www.heise.de/news/Wie-Google-Forms-aber-mit-Privatsphaere-Nextcloud-veroeffentlicht-Umfrage-Tool-4855836.html | |||
*Authentifizierung mit dem elektronischen Personalausweis | |||
**[https://nextcloud.com/blog/german-government-supports-authentication-with-identity-card-in-nextcloud/ German government supports authentication with identity card in Nextcloud] | |||
*Collectives (Wiki mit Markdown) | |||
**https://apps.nextcloud.com/apps/collectives | |||
**https://gitlab.com/collectivecloud/collectives | |||
**https://collectivecloud.gitlab.io/collectives/ | |||
*[https://apps.nextcloud.com/apps/integration_mattermost Mattermost Integration] App: Files in Mattermost Channel senden | |||
**[https://nextcloud.com/blog/introducing-the-nextcloud-and-mattermost-integration/ Introducing the Nextcloud and Mattermost Integration!] | |||
== Tipps und Tricks == | == Tipps und Tricks == | ||
*[https://nextcloud.com/blog/5-features-in-nextcloud-talk-you-didnt-know-about/ 5 features in Nextcloud Talk you didn’t know about] | |||
*[https://www.heise.de/ratgeber/FAQ-Nextcloud-in-der-Praxis-9794725.html FAQ: Nextcloud in der Praxis] (Heise) | |||
=== URL ändern === | === URL ändern === | ||
*Verzeichnis im DocumentRoot anpassen | *Verzeichnis im DocumentRoot anpassen | ||
Zeile 66: | Zeile 105: | ||
*PHP 7.4 -> Check hier ändern [https://help.nextcloud.com/t/this-version-of-nextcloud-is-not-compatible-with-php-7-3/65332]: | *PHP 7.4 -> Check hier ändern [https://help.nextcloud.com/t/this-version-of-nextcloud-is-not-compatible-with-php-7-3/65332]: | ||
lib/versioncheck.php | lib/versioncheck.php | ||
=== CalDAV und CardDAV === | |||
https://example.com/nextcloud | |||
https://example.com/nextcloud/remote.php/dav/calendars/<username>/<calendarname>/ | |||
https://example.com/nextcloud/remote.php/dav/addressbooks/users/<username>/<addressbookname>/ | |||
*[https://www.heise.de/ratgeber/Nextcloud-Kalender-in-ein-Android-Widget-integrieren-9323020.html Nextcloud-Kalender in ein Android-Widget integrieren | heise online] - Anzeige der Termine mittels jCal, c't 24/23 S.134, [[ct:yued]] | |||
=== Benutzung === | |||
*[https://nextcloud.com/blog/nextcloud-teams-hacks-for-better-team-sharing/ Nextcloud Teams: essential hacks for better team sharing and management] | |||
*[https://nextcloud.com/blog/how-to-set-up-a-meeting-effectively-in-nextcloud/ How to set up a meeting effectively in Nextcloud] | |||
=== Google Kalender === | |||
*https://github.com/nextcloud/calendar/issues/2766 | |||
*https://github.com/pimutils/vdirsyncer | |||
=== WebDAV === | |||
https://example.com/nextcloud | |||
https://example.com/nextcloud/remote.php/dav/files/<USERNAME>/ | |||
=== Update === | |||
*https://docs.nextcloud.com/server/21/admin_manual/maintenance/update.html | |||
sudo -u wwwrun php updater/updater.phar | |||
*Update Channel in config.php | |||
'updater.release.channel' => 'beta' | |||
=== Downgrade einer App === | |||
Beispiel "Nextcloud Office": | |||
* Die betreffende App in Nextcloud UI deaktivieren | |||
* Bestehende App entfernen | |||
cd apps/ | |||
rm -rf richdocuments | |||
* App herunterladen | |||
wget https://github.com/nextcloud-releases/richdocuments/releases/download/v5.0.1/richdocuments-v5.0.1.tar.gz | |||
* App entpacken, Owner setzen und Download-Paket entfernen | |||
tar zxvf richdocuments-v5.0.1.tar.gz | |||
chown -R wwwrun:www richdocuments | |||
rm richdocuments-v5.0.1.tar.gz | |||
* Die betreffende App in Nextcloud UI aktivieren | |||
=== PHP Performance === | |||
*https://docs.nextcloud.com/server/22/admin_manual/configuration_server/caching_configuration.html | |||
*https://docs.nextcloud.com/server/22/admin_manual/installation/server_tuning.html | |||
==== PHP-FPM ==== | |||
Werte weit über Default setzen: https://spot13.com/pmcalculator/ | |||
*27. April 2024 -> php-fpm startet nicht mehr mit [https://bugzilla.opensuse.org/show_bug.cgi?id=1223442 "pcre"-Fehler]. Abhilfe: Paket '''libpcre2-8-0-x86-64-v3''' deinstallieren | |||
Konfiguration Tool: https://spot13.com/pmcalculator/ | |||
==== Caching ==== | |||
*Opcache mit PHP-FPM | |||
/etc/php7/fpm/php.ini | |||
*APCu | |||
zypper in php7-APCu | |||
/etc/php7/conf.d/apcu.ini | |||
Prüfen: | |||
phpinfo(); | |||
=== Chaching mit redis === | |||
*Infos zu Cheching in Nextcloud mit redis | |||
**https://docs.nextcloud.com/server/28/admin_manual/configuration_files/files_locking_transactional.html | |||
**https://docs.nextcloud.com/server/28/admin_manual/configuration_server/caching_configuration.html | |||
**Filelocking Cache: Für Locking von Dateien bei Operationen mit Dateien im Filestore von Nextcloud | |||
**Distributed Server Cache: Für Webserver-Dateien wie SVGs der Weboberfläche | |||
**Local cache: Für Objekte wie Dateien im Benutzer-Filestore von Nextcloud | |||
*Redis installieren | |||
zypper in redis php8-redis | |||
systemctl enable redis@default | |||
*Redis konfigurieren (Unix Socket statt TCP [https://ask.linuxmuster.net/t/nextcloud-mit-redis-als-unix-socket-geht-nicht/5602],[https://guides.wp-bullet.com/how-to-configure-redis-to-use-unix-socket-speed-boost/]) | |||
vi /etc/redis/default.conf | |||
unixsocket /run/redis/redis.sock | |||
unixsocketperm 770 | |||
*Socket Verzeichnis erstellen | |||
mkdir /run/redis | |||
chown redis:redis /run/redis | |||
*Webserver-User in Gruppe "redis" aufnehmen | |||
vi /etc/group | |||
redis:x:453:wwwrun | |||
*php-fpm neu starten (ggf. auch Webserver) | |||
systemctl restart php-fpm | |||
*Redis starten | |||
systemctl start redis@default | |||
*Redis prüfen | |||
systemctl status redis@default | |||
*Logdatei prüfen | |||
less /var/log/redis/default.log | |||
*Nextcloud konfigurieren (nur Filelocking) | |||
<pre> | |||
'filelocking.enabled' => true, | |||
'memcache.locking' => '\OC\Memcache\Redis', | |||
'redis' => array( | |||
'host' => '/var/run/redis/redis.sock', | |||
'port' => 0, | |||
'timeout' => 0.0, | |||
), | |||
</pre> | |||
*Nextcloud konfigurieren (Filelocking + distributed server cache) | |||
<pre> | |||
'filelocking.enabled' => true, | |||
'memcache.locking' => '\OC\Memcache\Redis', | |||
'memcache.distributed' => '\OC\Memcache\Redis', | |||
'redis' => array( | |||
'host' => '/var/run/redis/redis.sock', | |||
'port' => 0, | |||
'timeout' => 0.0, | |||
), | |||
</pre> | |||
*Nextcloud konfigurieren (Filelocking + distributed server cache + local cache) | |||
<pre> | |||
'filelocking.enabled' => true, | |||
'memcache.locking' => '\OC\Memcache\Redis', | |||
'memcache.distributed' => '\OC\Memcache\Redis', | |||
'memcache.local' =>'\OC\Memcache\Redis', | |||
'redis' => array( | |||
'host' => '/var/run/redis/redis.sock', | |||
'port' => 0, | |||
'timeout' => 0.0, | |||
), | |||
</pre> | |||
*Nextcloud Systemlog prüfen | |||
*Redis Aktivitäten prüfen (bei Dateiaktivitäten) [https://help.nextcloud.com/t/how-to-check-if-redis-is-used-in-nc/22268/9] | |||
redis-cli -s /run/redis/redis.sock MONITOR | |||
redis-cli -s /run/redis/redis.sock KEYS "*" | |||
*Regelmäßige Dumps bzw. Snapshots im Filesystem [https://stackoverflow.com/questions/28785383/how-to-disable-persistence-with-redis]: | |||
/var/lib/redis/default/dump.rdb | |||
*Laden der Snapshots nach Restart prüfen im Log (hier 326 Keys mit 1,59 MByte): | |||
<pre> | |||
28151:C 03 Apr 2024 10:46:40.982 * Configuration loaded | |||
28151:M 03 Apr 2024 10:46:40.982 * monotonic clock: POSIX clock_gettime | |||
28151:M 03 Apr 2024 10:46:40.982 * Running mode=standalone, port=0. | |||
28151:M 03 Apr 2024 10:46:40.983 * Server initialized | |||
28151:M 03 Apr 2024 10:46:40.983 * Loading RDB produced by version 7.2.4 | |||
28151:M 03 Apr 2024 10:46:40.983 * RDB age 0 seconds | |||
28151:M 03 Apr 2024 10:46:40.983 * RDB memory usage when created 1.59 Mb | |||
28151:M 03 Apr 2024 10:46:40.983 * Done loading RDB, keys loaded: 326, keys expired: 0. | |||
28151:M 03 Apr 2024 10:46:40.983 * DB loaded from disk: 0.001 seconds | |||
28151:M 03 Apr 2024 10:46:40.983 * Ready to accept connections unix | |||
</pre> | |||
==== Valkey als redis-Fork ==== | |||
*https://valkey.io/ | |||
*https://fedoramagazine.org/how-to-move-from-redis-to-valkey/ | |||
*https://fstln.de/posts/nextcloud/valkey/ | |||
*7.2.x Version soll kompatibel zu Redis 7.2.x bleiben, neue Features gehen in 8.x. API soll (dauerhaft?) kompatibel bleiben. | |||
Installation und Konfiguration mit Nextcloud: | |||
*Valkey installieren | |||
zypper in valkey php8-redis | |||
systemctl enable valkey@default | |||
*Valkey konfigurieren (Unix Socket statt TCP [https://ask.linuxmuster.net/t/nextcloud-mit-redis-als-unix-socket-geht-nicht/5602],[https://guides.wp-bullet.com/how-to-configure-redis-to-use-unix-socket-speed-boost/]) | |||
vi /etc/valkey/default.conf | |||
unixsocket /run/valkey/valkey.sock | |||
unixsocketperm 770 | |||
*Webserver-User in Gruppe "valkey" aufnehmen | |||
vi /etc/group | |||
valkey:x:453:wwwrun | |||
*php-fpm neu starten (ggf. auch Webserver) | |||
systemctl restart php-fpm | |||
*Valkey starten | |||
systemctl start valkey@default | |||
*Valkey prüfen | |||
systemctl status valkey@default | |||
*Logdatei prüfen | |||
less /var/log/valkey/default.log | |||
*Nextcloud konfigurieren (nur Filelocking) | |||
<pre> | |||
'filelocking.enabled' => true, | |||
'memcache.locking' => '\OC\Memcache\Redis', | |||
'redis' => array( | |||
'host' => '/var/run/valkey/valkey.sock', | |||
'port' => 0, | |||
'timeout' => 0.0, | |||
), | |||
</pre> | |||
*Nextcloud konfigurieren (Filelocking + distributed server cache) | |||
<pre> | |||
'filelocking.enabled' => true, | |||
'memcache.locking' => '\OC\Memcache\Redis', | |||
'memcache.distributed' => '\OC\Memcache\Redis', | |||
'redis' => array( | |||
'host' => '/var/run/valkey/valkey.sock', | |||
'port' => 0, | |||
'timeout' => 0.0, | |||
), | |||
</pre> | |||
*Nextcloud konfigurieren (Filelocking + distributed server cache + local cache) | |||
<pre> | |||
'filelocking.enabled' => true, | |||
'memcache.locking' => '\OC\Memcache\Redis', | |||
'memcache.distributed' => '\OC\Memcache\Redis', | |||
'memcache.local' =>'\OC\Memcache\Redis', | |||
'redis' => array( | |||
'host' => '/var/run/valkey/valkey.sock', | |||
'port' => 0, | |||
'timeout' => 0.0, | |||
), | |||
</pre> | |||
== Sicherheit == | == Sicherheit == |
Aktuelle Version vom 24. Juli 2024, 11:15 Uhr
Nextcloud ist ein Fork von ownCloud und dient vorrangig als Cloud-Speicherdienst für den eigenen Server.
Nextcloud Infos
Migration von Owncloud:
- http://blog.jospoortvliet.com/2016/06/migrating-to-nextcloud-9.html
- https://help.nextcloud.com/t/migrating-from-owncloud-to-nextcloud/551/23
- https://help.nextcloud.com/t/howto-change-the-folder-owncloud-to-nextcloud-after-upgrading/695
- https://help.nextcloud.com/t/what-is-the-recommended-installation-method/585
Homepage und Support:
- https://nextcloud.com
- https://docs.nextcloud.org
- https://help.nextcloud.com
- Version scannen: https://scan.nextcloud.com
Apps:
Artikel:
- Nextcloud 13
- Nextcloud 17
- Nextcloud mit Docker auf NAS: siehe c't 10/18 S.142
- Nextcloud erfolgreich einführen: Checklisten für Ihre Organisation (pro-linux.de)
- Einsatz mit Kubernetes / k3s , siehe c't 09/20 S.26, ct:yq1e
- Nextcloud-Instanz per Docker der c't: https://github.com/psct/ctnextcloud
- Nextcloud stellt High-Performance Back-End unter Open-Source-Lizenz
Collabora Online
Mit Collabora kann man sich einen Dienst für die kollaborative Arbeit an Office-Dokumenten einrichten. Es basiert auf LibreOffice und läuft typischerweise als Docker-Container.
- https://nextcloud.com/collaboraonline/
- https://www.collaboraoffice.com/collabora-online/
- CODE
- https://hub.docker.com/r/collabora/code/
- https://help.nextcloud.com/t/nextcloud-collabora-integration/151879
- siehe iX 02/17 S.54
- https://nextcloud.com/blog/how-to-install-collabora-online-in-nextcloud-hub/
- https://collabora-online-for-nextcloud.readthedocs.io/en/latest/install/
- https://sdk.collaboraonline.com/docs/installation/CODE_Docker_image.html
Tipps:
- Nach Update muss man manchmal die Einstellung der URL in "Collabora Online Server" erneut speichern.
Release Notes:
- https://www.collaboraoffice.com/code-22-05-release-notes/ (CODE)
- https://www.collaboraoffice.com/collabora-online-22-05-release-notes/
Only Office
- How to install ONLYOFFICE in Nextcloud Hub and new integration feature
- Konnektoren
- siehe c't 11/20 S.128
- Nachteile gegenüber Collabora
- Bei geteilten Links ist der Editor immer "Anonym". Man kann keinen Namen setzen.
- Chat und Videokonferenz via Nextcloud nicht möglich im Kontext des Dokuments.
- Muss manuell geflusht werden, damit Änderungen im Cache in Datei geschrieben wird, z.B. per Cron
occ documentserver:flush
- speichert nicht zuverlässig; Änderungen aus verschiedenen Sessions gehen verloren, https://github.com/nextcloud/documentserver_community/issues/100
Talk
- Praxis-Bericht siehe c't 14/20 S.154, http://ct.de/yz7k
- How federated chat works in Nextcloud Talk
Andere Erweiterungen
- Introducing cloud storage in the blockchain with Sia and Nextcloud
- Kurztipp: Nextcloud mit Solr-Volltextsuche ausstatten (pro-linux.de)
- Nextcloud Text
- https://cloud.nextcloud.com/s/4Bi8CMtKLDe2otY
- https://www.linux-magazin.de/news/nextcloud-text-schlanker-editor-fuer-notizen-und-mehr/
- https://www.pro-linux.de/news/1/27197/nextcloud-stellt-kollaborativen-texteditor-vor.html
- https://www.pro-linux.de/artikel/2/1978/nextcloud-text-ein-etherpad-ersatz-f%C3%83%C2%BCr-alle.html
- Deck
- Group Folders: Für gemeinsame Verzeichnisstruktur, siehe c't 11/20 S.129
- Umfragen mit Nextcloud Forms: https://www.heise.de/news/Wie-Google-Forms-aber-mit-Privatsphaere-Nextcloud-veroeffentlicht-Umfrage-Tool-4855836.html
- Authentifizierung mit dem elektronischen Personalausweis
- Collectives (Wiki mit Markdown)
- Mattermost Integration App: Files in Mattermost Channel senden
Tipps und Tricks
URL ändern
- Verzeichnis im DocumentRoot anpassen
- Pfade in DocumentRoot/.htaccess anpassen
- Pfade in Apache Config anpassen, z.B. in /etc/apache2/conf.d/nextcloud.conf
- Nextcloud Config in config.php anpassen
- Ggf. Pfad zu data in Datenbank-Tabelle oc_storages anpassen
- Pfad in Collabora Online anpassen (Auth)
PHP Version
- PHP 7.4 -> Check hier ändern [1]:
lib/versioncheck.php
CalDAV und CardDAV
https://example.com/nextcloud https://example.com/nextcloud/remote.php/dav/calendars/<username>/<calendarname>/ https://example.com/nextcloud/remote.php/dav/addressbooks/users/<username>/<addressbookname>/
- Nextcloud-Kalender in ein Android-Widget integrieren | heise online - Anzeige der Termine mittels jCal, c't 24/23 S.134, ct:yued
Benutzung
- Nextcloud Teams: essential hacks for better team sharing and management
- How to set up a meeting effectively in Nextcloud
Google Kalender
WebDAV
https://example.com/nextcloud https://example.com/nextcloud/remote.php/dav/files/<USERNAME>/
Update
sudo -u wwwrun php updater/updater.phar
- Update Channel in config.php
'updater.release.channel' => 'beta'
Downgrade einer App
Beispiel "Nextcloud Office":
- Die betreffende App in Nextcloud UI deaktivieren
- Bestehende App entfernen
cd apps/ rm -rf richdocuments
- App herunterladen
wget https://github.com/nextcloud-releases/richdocuments/releases/download/v5.0.1/richdocuments-v5.0.1.tar.gz
- App entpacken, Owner setzen und Download-Paket entfernen
tar zxvf richdocuments-v5.0.1.tar.gz chown -R wwwrun:www richdocuments rm richdocuments-v5.0.1.tar.gz
- Die betreffende App in Nextcloud UI aktivieren
PHP Performance
- https://docs.nextcloud.com/server/22/admin_manual/configuration_server/caching_configuration.html
- https://docs.nextcloud.com/server/22/admin_manual/installation/server_tuning.html
PHP-FPM
Werte weit über Default setzen: https://spot13.com/pmcalculator/
- 27. April 2024 -> php-fpm startet nicht mehr mit "pcre"-Fehler. Abhilfe: Paket libpcre2-8-0-x86-64-v3 deinstallieren
Konfiguration Tool: https://spot13.com/pmcalculator/
Caching
- Opcache mit PHP-FPM
/etc/php7/fpm/php.ini
- APCu
zypper in php7-APCu /etc/php7/conf.d/apcu.ini
Prüfen:
phpinfo();
Chaching mit redis
- Infos zu Cheching in Nextcloud mit redis
- https://docs.nextcloud.com/server/28/admin_manual/configuration_files/files_locking_transactional.html
- https://docs.nextcloud.com/server/28/admin_manual/configuration_server/caching_configuration.html
- Filelocking Cache: Für Locking von Dateien bei Operationen mit Dateien im Filestore von Nextcloud
- Distributed Server Cache: Für Webserver-Dateien wie SVGs der Weboberfläche
- Local cache: Für Objekte wie Dateien im Benutzer-Filestore von Nextcloud
- Redis installieren
zypper in redis php8-redis systemctl enable redis@default
vi /etc/redis/default.conf unixsocket /run/redis/redis.sock unixsocketperm 770
- Socket Verzeichnis erstellen
mkdir /run/redis chown redis:redis /run/redis
- Webserver-User in Gruppe "redis" aufnehmen
vi /etc/group redis:x:453:wwwrun
- php-fpm neu starten (ggf. auch Webserver)
systemctl restart php-fpm
- Redis starten
systemctl start redis@default
- Redis prüfen
systemctl status redis@default
- Logdatei prüfen
less /var/log/redis/default.log
- Nextcloud konfigurieren (nur Filelocking)
'filelocking.enabled' => true, 'memcache.locking' => '\OC\Memcache\Redis', 'redis' => array( 'host' => '/var/run/redis/redis.sock', 'port' => 0, 'timeout' => 0.0, ),
- Nextcloud konfigurieren (Filelocking + distributed server cache)
'filelocking.enabled' => true, 'memcache.locking' => '\OC\Memcache\Redis', 'memcache.distributed' => '\OC\Memcache\Redis', 'redis' => array( 'host' => '/var/run/redis/redis.sock', 'port' => 0, 'timeout' => 0.0, ),
- Nextcloud konfigurieren (Filelocking + distributed server cache + local cache)
'filelocking.enabled' => true, 'memcache.locking' => '\OC\Memcache\Redis', 'memcache.distributed' => '\OC\Memcache\Redis', 'memcache.local' =>'\OC\Memcache\Redis', 'redis' => array( 'host' => '/var/run/redis/redis.sock', 'port' => 0, 'timeout' => 0.0, ),
- Nextcloud Systemlog prüfen
- Redis Aktivitäten prüfen (bei Dateiaktivitäten) [4]
redis-cli -s /run/redis/redis.sock MONITOR redis-cli -s /run/redis/redis.sock KEYS "*"
- Regelmäßige Dumps bzw. Snapshots im Filesystem [5]:
/var/lib/redis/default/dump.rdb
- Laden der Snapshots nach Restart prüfen im Log (hier 326 Keys mit 1,59 MByte):
28151:C 03 Apr 2024 10:46:40.982 * Configuration loaded 28151:M 03 Apr 2024 10:46:40.982 * monotonic clock: POSIX clock_gettime 28151:M 03 Apr 2024 10:46:40.982 * Running mode=standalone, port=0. 28151:M 03 Apr 2024 10:46:40.983 * Server initialized 28151:M 03 Apr 2024 10:46:40.983 * Loading RDB produced by version 7.2.4 28151:M 03 Apr 2024 10:46:40.983 * RDB age 0 seconds 28151:M 03 Apr 2024 10:46:40.983 * RDB memory usage when created 1.59 Mb 28151:M 03 Apr 2024 10:46:40.983 * Done loading RDB, keys loaded: 326, keys expired: 0. 28151:M 03 Apr 2024 10:46:40.983 * DB loaded from disk: 0.001 seconds 28151:M 03 Apr 2024 10:46:40.983 * Ready to accept connections unix
Valkey als redis-Fork
- https://valkey.io/
- https://fedoramagazine.org/how-to-move-from-redis-to-valkey/
- https://fstln.de/posts/nextcloud/valkey/
- 7.2.x Version soll kompatibel zu Redis 7.2.x bleiben, neue Features gehen in 8.x. API soll (dauerhaft?) kompatibel bleiben.
Installation und Konfiguration mit Nextcloud:
- Valkey installieren
zypper in valkey php8-redis systemctl enable valkey@default
vi /etc/valkey/default.conf unixsocket /run/valkey/valkey.sock unixsocketperm 770
- Webserver-User in Gruppe "valkey" aufnehmen
vi /etc/group valkey:x:453:wwwrun
- php-fpm neu starten (ggf. auch Webserver)
systemctl restart php-fpm
- Valkey starten
systemctl start valkey@default
- Valkey prüfen
systemctl status valkey@default
- Logdatei prüfen
less /var/log/valkey/default.log
- Nextcloud konfigurieren (nur Filelocking)
'filelocking.enabled' => true, 'memcache.locking' => '\OC\Memcache\Redis', 'redis' => array( 'host' => '/var/run/valkey/valkey.sock', 'port' => 0, 'timeout' => 0.0, ),
- Nextcloud konfigurieren (Filelocking + distributed server cache)
'filelocking.enabled' => true, 'memcache.locking' => '\OC\Memcache\Redis', 'memcache.distributed' => '\OC\Memcache\Redis', 'redis' => array( 'host' => '/var/run/valkey/valkey.sock', 'port' => 0, 'timeout' => 0.0, ),
- Nextcloud konfigurieren (Filelocking + distributed server cache + local cache)
'filelocking.enabled' => true, 'memcache.locking' => '\OC\Memcache\Redis', 'memcache.distributed' => '\OC\Memcache\Redis', 'memcache.local' =>'\OC\Memcache\Redis', 'redis' => array( 'host' => '/var/run/valkey/valkey.sock', 'port' => 0, 'timeout' => 0.0, ),