Vaultwarden:
Running on a Raspberry Pi Zero 2 W with Docker.
Jellyfin:
Running on a Windows gaming PC in a Fractal Meshify C case with an RTX 3060 Ti and 1.75TB SSD total (1TB M.2 NVME + 500GB M.2 NVME + 250GB SATA). Media files are stored on the same machine.
Everything has been running fine so far with little to no downtime. Note that these are serving only 1-2 users. I haven’t tried gaming and streaming Jellyfin media simultaneously as I’m afraid of it impacting my gaming performance, although I’ve read that for 1-2 streams there probably won’t be much of a difference. In the near future though, I may potentially give access to Jellyfin to some friends (at most 2-3 more users) and was worried that maybe at the point my gaming will be seriously affected.
At the moment, obviously my biggest gripe with running Jellyfin on my gaming PC is that the media files are quickly taking up quite a bit of space on my SSDs which could otherwise be used for more games.
After doing some research, I found some of these options:
Get either an internal/external HDD to store media files.
Get a prebuilt NAS (Synology or QNAP) to store media files, potentially running Jellyfin on it instead of my gaming PC.
Build a DIY NAS which will run Jellyfin and can also more broadly act as a home server and run other apps either through native Linux or through Docker.
If going with options 2 or 3, I might want to move Vaultwarden to it as well. In the near future, I may also want to host Calibre/Kavita and one or more web servers.
Hope someone can point me in the right direction. Thanks in advance!
I'm partial to the DIY PC option because it allows far more flexibility. If you can swing the space for the larger box IMO it's the best way to go.
Some things to keep in mind when speccing the box:
Some PCIe slots can come in extremely handy down the line. There's an amazing variety of expansion cards that can save your butt when you decide to do something you haven't foreseen.
Consider how many HDDs you'd like to have. This will determine the case size as well as how many SATA connectors you need to get.
Get an Intel CPU at least gen6 because they have GPU with hardware transcoding built-in.
Get at least one M.2 slot, to be able to install the OS on a NVMe SSD and not take up a SATA connector. Read the motherboard specs though, some of them disable a SATA connector anyway if you use the M.2 slots in a certain way.
You can run a server on RAM as low as 4 GB. You actually don't need very high RAM if you don't intend to run VMs or ZFS.
Are you familiar with any Linux distro in particular? I would strongly recommend using Docker rather than native regardless of distro.
All of those options are fine, in that they will all achieve what you want/describe/ask. Up to you which one you do, I've done all 3 essentially over the years as the lab has grown/expanded/matured. Depends what your budget is and what you want to get done really.