1
0
mirror of https://github.com/zokradonh/kopano-docker synced 2025-06-07 07:56:12 +00:00
Felix Bartels 70e9940b38
Run all containers read-only (#314)
* switch containers in compose file to read-only
related to https://github.com/zokradonh/kopano-docker/issues/310
* make scheduler container read-only
* make meet container read-only
* fix konnect for read-only
* make core mostly read-only
* add custom location for ldap.cfg to default config
* sort config option for readability
* update makefile pull workaround
* make kdav read-only
* remove locale generation code from core startup
* fix commander tests
* fix store language tests
* add test for a dutch mailbox
* make it possible to run webapp read-only
* add locale hint to the compose file
* finish read-only mode for z-push
2020-01-14 14:31:53 +01:00
..
2019-09-15 18:01:09 +02:00
2019-09-15 18:01:09 +02:00
2019-09-15 18:01:09 +02:00
2019-10-22 15:00:31 +02:00
2020-01-14 14:31:53 +01:00

Kopano Scheduler image

Service to carry out repeating tasks within the Kopano environment. Takes care of initial user sync on startup and creating the public store.

Recurring tasks and maintenance tasks within Kopano

There are certain tasks within Kopano that either need to be executed once (like creating the public store when starting a new environment for the first time) or on a regular base (like syncing the internal user list with and external ldap tree). For convenience this project includes a "scheduler" container that will take care of this and that can be dynamically configured through env variables.

The container knows two kinds of cron jobs (the crontab syntax is used for actual jobs):

  • CRON_ZPUSHGAB=0 22 * * * docker exec kopano_zpush z-push-gabsync -a sync
    • Jobs prefixed with CRON_ are executed once at container startup (and container startup will fail if one of the jobs fail) and then at the scheduled time.
  • CRONDELAYED_KBACKUP=30 1 * * * docker run --rm -it zokradonh/kopano_utils kopano-backup -h
    • Jobs prefixed with CRONDELAYED_ are only executed at the scheduled time.

Instead of using the internal scheduler one can also just use an existing scheduler (cron on the docker host for example) to execute these tasks.