How to Setup a TrueNAS Scale Server
This blog post will get you started with the minimum you need to stand up a TrueNAS Scale Server and create NFS share(s) for docker persisted volumes.
See also, the TrueNAS Scale Official Documentation:
- Use LZ4 compression unless you know what you’re doing
- Use NFSv4 ACLs unless you know what you’re doing
Setup TrueNAS Scale
Next, go to Network, and set your hostname via Global Configuration.
Next, from your router, assign the server a static IP address outside of your DHCP pool range.
Then, from System Settings -> General, enable the HTTP to HTTPS redirect.
Before we can start adding network shares, we’ll need to add a local user.
First, create a new dataset for local user homes. I recommend this be root level, and named something simple like
See the official documentation on Adding and Managing Datasets for further details on creating new datasets.
Now that there is a place for the user homes, go ahead and create a new local user.
A few notes:
- Use the default UID, and DO NOT OVERRIDE IT. Trust me, it’ll cause immense headaches down the road if you modify this.
- Set the home directory to the new dataset for homes
- Enable sudo
- Add your authorized ssh keys
- Set shell to your preferred terminal
Now that you have a local user with SSH keys, you’ll want to enable and start automatically the SSH service under System Settings -> Services. Don’t enable the NFS and SMB services quite yet, we’ll do that after creating the shares.
Creating an NFS Share
Follow the official documentation on Adding NFS Shares.
A few notes:
- I am inexperienced with NFS, and couldn’t figure out how to get files to write without setting
mapall groupboth to a user with permissions to the dataset. Apparently this is a no-no, and if you know the proper method, let me know at @email@example.com and I’ll update this post.
- Enable NFSv4 (and dont enable NFSv3 mode for NFSv4)
Creating an SMB Share
You should now be able to use this server as the hosting for your persistent volumes in Docker. I’ll be following up with various blog posts using this, such as Plex and Modded Minecraft servers via docker swarm.
Look in the bottom right for “No Thank you, I have already signed up.” to skip their newsletter spam. ↩