mirror of
https://github.com/nextcloud/docker.git
synced 2025-01-24 14:43:53 +01:00
Add NEXTCLOUD_INIT_LOCK
to enable shared html volume update
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
This commit is contained in:
parent
d11d42bb20
commit
83d5e72596
2 changed files with 7 additions and 2 deletions
|
@ -137,6 +137,10 @@ The install and update script is only triggered when a default command is used (
|
|||
|
||||
- `NEXTCLOUD_UPDATE` (default: `0`)
|
||||
|
||||
If you share your html folder with multiple docker containers, you might want to avoid multiple processes updating the same shared volume
|
||||
|
||||
- `NEXTCLOUD_INIT_LOCK` (not set by default) Set it to true to enable initialization locking. Other containers will wait for the current process to finish updating the html volume to continue.
|
||||
|
||||
If you want to use Redis you have to create a separate [Redis](https://hub.docker.com/_/redis/) container in your setup / in your docker-compose file. To inform Nextcloud about the Redis container, pass in the following parameters:
|
||||
|
||||
- `REDIS_HOST` (not set by default) Name of Redis container
|
||||
|
|
|
@ -103,12 +103,13 @@ if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UP
|
|||
fi
|
||||
|
||||
# If another process is syncing the html folder, wait for
|
||||
# it to be done, then escape initalization
|
||||
# it to be done, then escape initalization.
|
||||
# You need to define the NEXTCLOUD_INIT_LOCK environment variable
|
||||
lock=/var/www/html/nextcloud-init-sync.lock
|
||||
count=0
|
||||
limit=10
|
||||
|
||||
if [ -f "$lock" ]; then
|
||||
if [ -f "$lock" ] && [ -n "${NEXTCLOUD_INIT_LOCK+x}" ]; then
|
||||
until [ ! -f "$lock" ] || [ "$count" -gt "$limit" ]
|
||||
do
|
||||
count=$((count+1))
|
||||
|
|
Loading…
Reference in a new issue