Setting up Navidrome in Docker on TrueNAS Scale

Old Reply, that was less refined

Installing Navidrome manually through the UI:

It’s possible without the hassle you had to go through, all that’s needed is setting a Port and Forwarding it to provide access via the Host’s IP. If a separate IP / Interface is needed there are options to set that up.

Any Arguments or Environment Variables needed can also be set through the UI during installation, see here (this was just a minimal installation with not much configured, though working):


Screenshot from 2022-02-23 08-21-24

Installing Navidrome via TrueCharts Catalogue

A TrueCharts App is not a replacement for a Docker Container, just an easier, more automated way to set one up, as it takes into consideration the underlying Kubernetes.
It exposes the relevant settings for Kubernetes and Docker that the particular container needs in a more readable way for less experienced users and does some work in the background.

For Example, the Networking Section can be as simple as this, how it comes pre-configured:


In this case it exposes Navidrome via the Host’s IP.

But the GUI for the App also has options to set things up for a ClusterIP, that is available only internally to connect it to another Docker running Traefik or other advanced configurations.
Check out the Section to Configure Ingress with a few settings:

My Verdict:

Why not describe both Options?

For Beginners, using the TrueCharts Helms is much easier and will make it easier to understand what’s being configured.
For Advanced Users, Setting up the Docker manually via the GUI will work well and give deeper insight.

A Wiki Post for Global Configuratin on the “Apps” Section in TrueNAS Scale and how to get started with it would probably also be a good idea, I’ll volunteer for it.

I think it’d be better in the long term than your method, as in both cases these configs will actually get stored in the database file of TrueNAS Scale, are easy to back up / restore and won’t have a chance to break during updates.

I’ve been working with TrueNAS Scale and have been exploring this a bit more.

If one wants to install Navidrome as a Docker Container, not using TrueCharts, and expose outside of TrueNAS Scale, there are two easy Options:

1) Add a Network Interface from the Host with an IP Alias


Now one can reach Navidrome externally via the chosen IP and Port 4553.
The Port can be changed by adding an Environment Variable to Navidrome

2) Forward a Port to the Container


Now one can reach Navidrome via the IP/Hostname of the TrueNAS Scale System and Port 9533.

Adding a Host Path for Media Ingress:


This is also done quite comfortably through the UI, as long as there are read permissions available on the filesystem.