@kenkendk @ts678 Do you gentlemen know, is it possible to modify and/or pass this variable into a docker container? I think I am experiencing this very issue on my new Duplicati setup, however I am using a linuxserver.io provided container on Unraid. I think I am running in circles with trying to pass this value into the system. At the moment linuxserver.io is only providing the stable and development tags, so I can’t switch to the experimental to get this value from your PR, so I am trying to do the manual approach of somehow getting a preload.json.
Welcome to the forum @cybrnook
I don’t do Docker, but have you seen environment setting in documentation?
Yeah… I saw what they were offering, but either I am over thinking it or it’s just not quite what we need. So from their docu, the two options we really have are the CLI_ARGS option, which I don’t see how that helps and then they offer the ability to mask container variables in a file and then just call the file. I think it’s coincidental that they are calling that FILE__ option “secrets” when in fact Duplicati has the Docker Secret Manager option which I think is something different (but then again, maybe not… been staring at it too long with too many distractions in between I prob just need to step back and then revisit).
I think the proper form would be adding the preload.json file in the docker compose section, but I don’t think Unraid has a vanilla docker setup and I just don’t see how to add the preload.json file. I assume it would look like this:
{
"env": {
"server": {
"SETTINGS_ENCRYPTION_KEY": "<real encryption key>",
"DUPLICATI__WEBSERVICE_PASSWORD": "<ui password>"
"CUSTOMSQLITEOPTIONS_DUPLICATI": "cache_size=-100000"
}
}
}
@ts678 is there a way to query the current cache size value once the system is up and running to help me verify if I get it working or not?
I was thinking of their documentation for docker-compose and docker-cli environment.
You can probably docker exec in and run ps with e option to show process environment which could show if the variable made it in. You can also get logging at verbose level. You can watch About → Show log → Live --Verbose at start of the operation for log output like:
Setting custom SQLite option ‘cache_size=-200000’.
It should be quite simple, if you use Docker compose, it would be:
services:
duplicati:
image: lscr.io/linuxserver/duplicati:latest
container_name: duplicati
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
- SETTINGS_ENCRYPTION_KEY=
- CLI_ARGS= #optional
- DUPLICATI__WEBSERVICE_PASSWORD= #optional
- CUSTOMSQLITEOPTIONS_DUPLICATI=-100000
volumes:
- /path/to/duplicati/config:/config
- /path/to/backups:/backups
- /path/to/source:/source
ports:
- 8200:8200
restart: unless-stopped
If you use something else, you should be able to pass environment variables there.
You can use that way, but you need to store the file on the host system, then mount it into the Docker container in a place where Duplicati looks for it.