Setting up Navidrome in Docker on TrueNAS Scale

So I revisted this because it was bugging me really bad, turns out someone solved my issue already.

The popular containers in the docker repos have a small java heap space allocated, which is fine for small libraries, but bigger libraries will struggle. Increasing the heap space with the variable “JVM_HEAP” and giving it a value of something bigger, I chose “3000m”, though you probably don’t need this much… It instantly solved my problems. Airsonic now loads and searches instantly, even with my current library of 150k tracks. It offers all the goodies navidrome does too.

Also lesson learned, if I just read the logs to begin with I would’ve been able to diagnose and solve this myself. Next time…

2 Likes

Is there a way for Navidrome to support FLACSs? I copy and pasted my music collection (mostly FLACs) into the Navidrome folder and I cant seem to be able to play them.

I quickly dug around (before going to work) and saw things in the settings like transcode and I am wondering if I did something wrong and my Navidrome is just plain misconfigured and I had to do a redo to fix is or playing FLACs arent supported initially and MP3 are better suited to it.

So I tried doing this but switched it up a little. I followed the guide on setting a VM and Portainer, then added Navidrome via Portainer.

I created a NFS share docker-nfs and mounted in the VM. I tested and it is accessible. Within that docker-nfs dataset, I created a child dataset called navidrome, then ones under it called data and music and referenced those in the docker compose for the volumes.

I had the music stored on another pool which is a SMB share so I can access it from the Windows machines in my network, so I used the TrueNAS Scale CLI to

cp /mnt/fudge/smbshare/Music /mnt/moomoo/docker-nfs/navidrome/music.

(Please forgive my pool names, it was VERY late when I set them up and I had the flu).

I originally had the “error disabling foreign keys” issue a few have referenced but got beyond it by removing the user pid. Navidrome is running and accessible (at least from inside the network, haven’t tested Tailscale yet). However, there is no music in the library.

Navidrome:

The weird thing is, the music is there when I run ls on the TrueNAS Scale CLI but it is not showing up when I SSH into the VM and look:

TrueNAS Scale:

VM:
image

Additionally, the reverse is true: the Navidrome files in /data cannot be seen in the TrueNAS Scale CLI but show up in the VM itself:

TrueNAS Scale:

VM:
image

I’m guessing either I have screwed something up with NFS or this is some kind of ACL issue. I tried applying the NSF4_OPEN preset on the docker-nfs dataset, and on the docker-nfs/navidrome, docker-nfs/navidrome/data, and docker-nfs/navidrome/music datasets (unsure if this is actually a good idea but I think it’s okay since this box is not exposed to the internet???) but that did not fix the issue.

ACL permissions for everyone@ for these datasets:
image

Anyone have any suggestions? I have obviously screwed something up but I can’t figure out how.

EDIT0: Tailscale seems to be working. I have the router advertising the correct subnet route and can ping the VM using the external Tailscale IP. I can also access Navidrome by going to [external Tailscale IP]:4355.