Wonderfall / docker-nextcloud

All-in-one Nextcloud Docker image, based on Alpine Linux. Aims at being simple and hardened.
194 stars 93 forks source link

Failing CalDav synchronization #115

Open MaggiWuerze opened 1 year ago

MaggiWuerze commented 1 year ago

Since updating to the latest version syncing my calendar with DavX5 fails with a "server side error"

Looking in the Nextcloud protocol it says:

Allowed memory size of 536870912 bytes exhausted (tried to allocate 4096 bytes) at /nextcloud/3rdparty/sabre/vobject/lib/Recur/RRuleIterator.php#680

MaggiWuerze commented 1 year ago

Increasing the MEMORY_LIMIT to 1G did not help as it just ran past that: Allowed memory size of 1073741824 bytes exhausted (tried to allocate 4096 bytes) at /nextcloud/3rdparty/sabre/vobject/lib/Recur/RRuleIterator.php#680 Neither did 2G: Allowed memory size of 2147483648 bytes exhausted (tried to allocate 4096 bytes) at /nextcloud/3rdparty/sabre/vobject/lib/Recur/RRuleIterator.php#680

MaggiWuerze commented 1 year ago

Also opened a PR on nextcloud/server, since there are a couple of similar issues: https://github.com/nextcloud/server/issues/37673

jmhbnz commented 1 year ago

Hey @MaggiWuerze - I was able to resolve this situation temporarily by disabling PHP hardening, refer: https://github.com/Wonderfall/docker-nextcloud/commit/acfab6ccf0cef9057d28c17fb388f3afb21b5aed

MaggiWuerze commented 1 year ago

@jmhbnz So you build the image yourself with those changes? Or would it be possible to add that change without rebuilding?

jmhbnz commented 1 year ago

A rebuild is required, my process is:

git clone https://github.com/jmhbnz/docker-nextcloud
cd docker-nextcloud
podman build -t ghcr.io/jmhbnz/nextcloud:25.0.5 .

Then you can just update your compose file to use your new locally available tagged image ghcr.io/jmhbnz/nextcloud:25.0.5.

Edit: Perhaps in future this could be a customisation via https://github.com/Wonderfall/docker-nextcloud#build-time-variables

MaggiWuerze commented 1 year ago

That worked, thanks for the help. At least now I can still sync until this is fixed