捨棄nextcloud(容器)內背景排程,改用主機排程(cron)

nextcloud的背景排程,預設為 AJAX,雖說nextcloud建議使用系統cron,但是nextcloud容器cron是「不啟用」的,每次改用Cron,還要進容器另外處哩,非常麻煩,容器升級又要做一次,折磨人啊 。 久而久之,nextcloud一律使用預設值AJAX,我測試過AJAX不會失敗(私、失敗しないので)。

直到最近我使用nextcloud的看板系統(Deck),需要有「email通知 Deck系統裡 卡片異動通知」之功能,因此AJAX單人用還可以,但公司用我就得改用Cron,可是一想到要進容器啟用cron就覺得好煩,才來才知道我錯了。

原來改用cron意外地簡單!

不管是RockLinux、CentOS還是ubuntu,只要在容器宿主(Host)裡的cron,加上一條指令就完事了。

/usr/bin/docker exec -t -u www-data <容器名稱> php -d memory_limit=512M  -f /var/www/html/cron.php

真是太棒了!

以下是排程我建議要執行的

docker exec -t -u www-data nextcloud php occ trashbin:expire --quiet
docker exec -t -u www-data nextcloud php occ versions:expire --quiet
docker exec -t -u www-data nextcloud php -d memory_limit=512M  -f /var/www/html/cron.php
docker exec -u www-data -it nextcloud php occ  files:scan --all
docker exec -u www-data -it nextcloud php occ  files:scan --unscanned --all

One comment

發表迴響