I have a Transmission app set up and working well from the TrueNAS Apps Catalog (community). It’s up, it can download stuff, etc. So far, so good.
I’d like to put a password on my Transmission UI, so I can then later expose it to the internet, and use it while I’m away from home. In the past, I’ve done this by editing the settings.json file to enable the RPC password, set the username & password, etc.
Under the TrueNAS app, I have the Config file saved to a dataset on my NAS. I can stop the Transmission App, and edit the settings.json file. However, when I start the App again, the file reverts to a previous version, and all of my changes are overwritten. This includes any changes I make using the UI (speed limits, times, etc.).
How can I change my settings.json so that it is persistent, and not overwritten when the app restarts?
Name: transmission
App Version: 4.0.6
Version: 1.0.7
Source: transmission - LinuxServer.io, transmissionbt.com
Train: community
Did you add a hostpath mount for that config folder?
/path/to/transmission/data
mounted as /config
?
Also a bad idea to expose things to the world, why not use something like Tailscale that would let you have access to you home network (and Scale & apps webpages).
Yes, I added the hostpath. I can stop the App, make the edits, and when I restart the app, the settings.json file is overwritten - the changes revert, and the timestamp updates to when the App started.
I already have a public-facing web server running at home, for things like my personal homepage, Nextcloud, etc. for easy access while on the road. In the past, I’d set up a Proxy to Transmission (back when I was running a Jail on ThreNAS CORE), so it wasn’t totally exposed - just the proxy part. Still, putting the RPC Password in place is a good idea.
I was able to resolve this, mostly - the username and password can be set as environment variables.
It still overwrites the settings.json, but the desired settings are there now.
Hello GJShaller. I just signed up to this forum and was about to write about this EXACT same issue.
I edit settings.json in SSH through Putty (to add credentials) and they revert back to default when transmission starts back.
You seem to say that you resolve the issue. Can you please tell me how?
Thanks
I wasn’t able to solve it, entirely - check the documentation I linked, above.
You need to pass variables to the App when you set it up - these variables will be passed into settings.json when it’s (re)created each time the app launches. Not ideal, but better than nothing.
Thanks for the quick reply. I don’t know what ‘passing variables’ means. I looked at the doc you posted above and I was overwhelme by the amount of informations. That’s a LOT of work jst to add credetials to an app…which was built in the same app on QNAP.
I then tried to switch to qBittorent which has credntials, but then I realized that it doesnt have a remote client for windows.
I think it’s just how that transmission image works. Possible the pre-EE chart had something in the UI that was passed as ENV?
The brute-force side of me would be to take the container offline then change your compose file for it to do the config bind as readonly. Could do the same thing if you’re using the community version (should be a checkbox for readonly for that hostpath).