OP if you are interested in learning Linux and Docker and possibly running a VM or two on top of NAS duties, I would suggest unRAID. The best part of unRAID is its main function as a NAS, its not running RAID and as such you can have multiple hard drives, shoot even 10 or more hard drives "backed up" by one parity drive. Please note that backed up is not the right term as simple algebra is used to rebuild up to one or two drives (if there are two parity drives) worth of data. So if you have 10 drives and one fails, a parity calculation is done to determine the value of the bit at that part of the hardrive, this calculation is done to rebuild a failed drive. If you were to lose two hard drives and only have one partiry drive then you would lose the data on those two drives only. This is preferable to RAID as if you lose 2 drives and only have a setup capable of recovering one lost drive, you woud lose the whole array of drives. Another nice thing is that you can always add additional storage one drive as time (provided your system has a sata/sas port and your unraid license hasn't used all of the devices it can fit. So you can start with 3 x 4tb hard drives and have 1 x 4tb drive for parity and then add another drive up to the size of your parity drive (4TB) is this case. This makes it much easier to grow into your NAS, where solutions like ZFS require lots of RAM and need an entire v-dev of 4 or more disks added at a time to expand your storage.
unRAID is also a great OS for running docker containers like Plex and a ton of other applications that you can easily install via the community applications tab. unRAID can also run Virtual Machines as well. I think its a great way to get introduced to more heavy duty hypervisors such as Xen, Proxmox or VMware ESXi. Plus it is a great introduction to docker, a containerization platform that allows you to install full applications without first needing to create a VM running a full blown OS to then install the application (look it up, theres definetly better explainations out there). unRAID costs money but its a one-time fee and you can get a trial and a trial extension for a couple months of free time. Windows will work, but it has no built in parity and running hardware raid is something I would avoid unless you really know what you are doing and have the abiltiy to back up the whole array elsewhere, because raid is not a backup. neither is unraid but its at least a bit more forgiving, losing only whats on one disk if your parity fails.