Tailscale on TrueNas

Hi everyone, I have Tailscale working on TrueNas, can remote to it fine from outside the local network, but using Taildrop sends the files to TrueNas, but can’t find them anywhere. Tailscale thinks they would be sent to the Tailscale Pod. I’ve tried kubectl exec --stdin -tty pod/tailscale cmd but error msg says ‘kubectl command not found’. I am a novice at all this, but anyone else come across is issue? Taildrop works fine with Chromebook - file arrives in downloads and works with Windows (same arrives in Downloads) but even though it says file sent ok to TrueNas - can’t find the files anywhere. Any suggestions?

I am not a Tailscale user, so I am answering this based on general TN knowledge.

I am assuming that you are using Cobia or Dragonfish and not Electric Eel - in which case you are using Tailscale inside a Kubernetes container.

I would assume that Taildrop stores the fine somewhere inside this container in what is known as an ixVolume. Ideally you would want to externalise this Taildrop directory using a Host Path however there doesn’t appear to be any way to add a host path in the standard TruneNAS Charts Tailscale app settings. :frowning:

However, the root for the data for all apps will be in the ix-applications dataset on whatever pool you have told TN to use for apps. In my case it is apps-pool and releases are found at /mnt/apps-pool/ix-applications/releases/. Assuming that Tailscale is in a sub-directory tailscale, you would find the container data in /mnt/apps-pool/ix-applications/releases/tailscale/volumes/ix_volumes/. If you do a find in this directory, then hopefully you can locate your Taildrop file.

Presuming (1) you’re using Dragonfish or earlier and (2) you haven’t mounted a host path to your Tailscale app, the files you Taildropped are inside that container in /tmp/files/. I’m not sure how I’d feel about mounting external storage to /tmp inside, but that’d be the way to see taildropped files outside the app.

Thanks @dan .

Is the /tmp inside the container the same /tmp in a normal shell?

No, the container has its own filesystem. You’d need to mount a host path to, e.g., /tmp/files/. I’m not sure if it’s possible to specify a different directory for taildrops with command-line options–the app allows such options, but I’m not sure if there is one for this purpose.

I checked the Tailscale settings UI - no ability to add a Host Path.

I guess the only way to deal with this would be to use an in-container shell to copy the file from ‘/tmp/files’ to somewhere in the ixVolume.

Sure enough. I’ll bet it was there in the TrueCharts version (edit: yes, it was), but that’s water under the bridge at this point. I’m not sure what good copying it into the ixVolume would do, though.

I’m not sure what “good” options are at this point, other than “wait for the Docker apps in EE when it comes out next month.” You could run it as a custom app, but I’d be concerned that the networking changes would be difficult to manage that way.

People have good success running tailscale directly installed in a host networked jail