История изменений
Исправление bvn13, (текущая версия) :
Pinkbyte, я навялил.
Dockerfile
FROM nextcloud:23.0.3-apache
WORKDIR /var/www/html
COPY ./script/cron.sh /app/cron.sh
ENTRYPOINT ["/entrypoint.sh"]
Скрипт
#!/bin/bash
run_as() {
if [ "$(id -u)" = 0 ]; then
su -p www-data -s /bin/sh -c "$1"
else
sh -c "$1"
fi
}
run_as ' \
php /var/www/html/cron.php
'
echo $?
И композ в части клауда:
services:
nextcloud:
build: ./src/
container_name: nextcloud
environment:
- TZ=Europe/Moscow
- POSTGRES_HOST=postgres-nextcloud
- POSTGRES_DB=nextcloud
- POSTGRES_USER=nextcloud
- POSTGRES_PASSWORD=dsfjhskdjfhskWER!
volumes:
- ./nextcloud/apps:/var/www/html/apps
- ./nextcloud/custom_apps:/var/www/html/custom_apps
- ./nextcloud/config:/var/www/html/config
- ./nextcloud/data:/var/www/html/data
networks:
- nextcloud
restart: unless-stopped
depends_on:
- postgres-nextcloud
Теперь крон на хосте
NEXTCLOUD=/var/log/nextcloud
# cron webhook
*/1 * * * * /bin/bash -c 'mkdir $NEXTCLOUD; printf "$(date -Is) - $(docker exec nextcloud bash /app/cron.sh)\\n" >> $NEXTCLOUD/nextcloud-cron.log'
# making archive
* */1 * * * /bin/bash -c 'tar -cf $NEXTCLOUD/nexcloud-cron--$(date '+%Y-%m-%d--%H-%M-%S').tar $NEXTCLOUD/nextcloud-cron.log && rm $NEXTCLOUD/nextcloud-cron.log'
# removing the oldest
23 3 * * * /bin/bash -c 'find $NEXTCLOUD/ -type f -mtime 3 -exec rm -f {} \;'
Важна первая запись. Вторая и третья - попытался ротацию логов сделать. Еще не обтестил.
Исправление bvn13, :
Pinkbyte, я навялил.
Dockerfile
FROM nextcloud:23.0.3-apache
WORKDIR /var/www/html
COPY ./script/cron.sh /app/cron.sh
ENTRYPOINT ["/entrypoint.sh"]
Скрипт
#!/bin/bash
run_as() {
if [ "$(id -u)" = 0 ]; then
su -p www-data -s /bin/sh -c "$1"
else
sh -c "$1"
fi
}
run_as ' \
php /var/www/html/cron.php
'
echo $?
И композ в части клауда:
services:
nextcloud:
image: nextcloud:23.0.3-apache
build: ./src/
container_name: nextcloud
environment:
- TZ=Europe/Moscow
- POSTGRES_HOST=postgres-nextcloud
- POSTGRES_DB=nextcloud
- POSTGRES_USER=nextcloud
- POSTGRES_PASSWORD=dsfjhskdjfhskWER!
volumes:
- ./nextcloud/apps:/var/www/html/apps
- ./nextcloud/custom_apps:/var/www/html/custom_apps
- ./nextcloud/config:/var/www/html/config
- ./nextcloud/data:/var/www/html/data
networks:
- nextcloud
restart: unless-stopped
depends_on:
- postgres-nextcloud
Теперь крон на хосте
NEXTCLOUD=/var/log/nextcloud
# cron webhook
*/1 * * * * /bin/bash -c 'mkdir $NEXTCLOUD; printf "$(date -Is) - $(docker exec nextcloud bash /app/cron.sh)\\n" >> $NEXTCLOUD/nextcloud-cron.log'
# making archive
* */1 * * * /bin/bash -c 'tar -cf $NEXTCLOUD/nexcloud-cron--$(date '+%Y-%m-%d--%H-%M-%S').tar $NEXTCLOUD/nextcloud-cron.log && rm $NEXTCLOUD/nextcloud-cron.log'
# removing the oldest
23 3 * * * /bin/bash -c 'find $NEXTCLOUD/ -type f -mtime 3 -exec rm -f {} \;'
Важна первая запись. Вторая и третья - попытался ротацию логов сделать. Еще не обтестил.
Исходная версия bvn13, :
Pinkbyte, я навялил.
Dockerfile
FROM nextcloud:23.0.3-apache
WORKDIR /var/www/html
COPY ./script/cron.sh /app/cron.sh
ENTRYPOINT ["/entrypoint.sh"]
Скрипт
#!/bin/bash
run_as() {
if [ "$(id -u)" = 0 ]; then
su -p www-data -s /bin/sh -c "$1"
else
sh -c "$1"
fi
}
run_as ' \
php /var/www/html/cron.php
'
echo $?
И композ в части клауда:
services:
nextcloud:
image: nextcloud:23.0.3-apache
build: ./src/
container_name: nextcloud
environment:
- TZ=Europe/Moscow
- POSTGRES_HOST=postgres-nextcloud
- POSTGRES_DB=nextcloud
- POSTGRES_USER=nextcloud
- POSTGRES_PASSWORD=dsfjhskdjfhskWER!
volumes:
- ./nextcloud/apps:/var/www/html/apps
- ./nextcloud/custom_apps:/var/www/html/custom_apps
- ./nextcloud/config:/var/www/html/config
- ./nextcloud/data:/var/www/html/data
networks:
- nextcloud
restart: unless-stopped
depends_on:
- postgres-nextcloud
Теперь крон на хосте
NEXTCLOUD=/var/log/nextcloud
# cron webhook
#*/1 * * * * /bin/bash -c 'mkdir $NEXTCLOUD; printf "\\n\\n\\n$(date -Is)\\n\\n" >> $NEXTCLOUD/nextcloud-cron.log; for i in $(seq 1 100); do curl https://cloud.bvn13.me/cron.php; done >> $NEXTCLOUD/nextcloud-cron.log'
*/1 * * * * /bin/bash -c 'mkdir $NEXTCLOUD; printf "$(date -Is) - $(docker exec nextcloud bash /app/cron.sh)\\n" >> $NEXTCLOUD/nextcloud-cron.log'
# making archive
* */1 * * * /bin/bash -c 'tar -cf $NEXTCLOUD/nexcloud-cron--$(date '+%Y-%m-%d--%H-%M-%S').tar $NEXTCLOUD/nextcloud-cron.log && rm $NEXTCLOUD/nextcloud-cron.log'
# removing the oldest
23 3 * * * /bin/bash -c 'find $NEXTCLOUD/ -type f -mtime 3 -exec rm -f {} \;'
Важна первая запись. Вторая и третья - попытался ротацию логов сделать. Еще не обтестил.