mirror of
https://github.com/offen/docker-volume-backup.git
synced 2026-04-30 12:15:36 +02:00
Support identical cron schedule (#87)
* Retry on lock being unavailable * Refactor locking to return plain error * Collect LockedTime in stats * Add test case * Add documentation for LOCK_TIMEOUT * Log in case lock needs to be awaited * Release resources created for awaiting lock
This commit is contained in:
13
README.md
13
README.md
@@ -335,6 +335,16 @@ You can populate below template according to your requirements and use it as you
|
||||
|
||||
# DOCKER_HOST="tcp://docker_socket_proxy:2375"
|
||||
|
||||
########### LOCK_TIMEOUT
|
||||
|
||||
# In the case of overlapping cron schedules run by the same container,
|
||||
# subsequent invocations will wait for previous runs to finish before starting.
|
||||
# By default, this will time out and fail in case the lock could not be acquired
|
||||
# after 60 minutes. In case you need to adjust this timeout, supply a duration
|
||||
# value as per https://pkg.go.dev/time#ParseDuration to `LOCK_TIMEOUT`
|
||||
|
||||
# LOCK_TIMEOUT="60m"
|
||||
|
||||
########### EMAIL NOTIFICATIONS
|
||||
|
||||
# ************************************************************************
|
||||
@@ -681,7 +691,8 @@ volumes:
|
||||
|
||||
A separate cronjob will be created for each config file.
|
||||
If a configuration value is set both in the global environment as well as in the config file, the config file will take precedence.
|
||||
The `backup` command expects to run on an exclusive lock, so it is your responsibility to make sure the invocations do not overlap.
|
||||
The `backup` command expects to run on an exclusive lock, so in case you provide the same or overlapping schedules in your cron expressions, the runs will still be executed serially, one after the other.
|
||||
The exact order of schedules that use the same cron expression is not specified.
|
||||
In case you need your schedules to overlap, you need to create a dedicated container for each schedule instead.
|
||||
When changing the configuration, you currently need to manually restart the container for the changes to take effect.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user