Hi everyone, I am trying to repurpose a Ryzen 1700 system for a home server, but not exactly sure what the best solution for my needs is, and how to find additional resources.

More context, I have 4 8th hdds (wd blue drives; would’ve preferred reds but, alas). I intended to run these in raid10, but open to other ideas also. These are connected via sata directly to Mobo. I’d like to selfhost a nice NAS stack, to include: my own office 365 / google docs thing, file storage, and storage and playback of music and video files. I’d like to run jellyfin and a myriad of ‘arr things. Please send any and all suggestions. Should all of these run on a single virtual machine?

Alongside this, probably in a separate virtual machine, I’d like to run a home assistant instance with some mild transcoding (I think) going on in regards to some cameras I have around the house.

I also think I’d run tail scale to vpn back in?

What I’ve researched so far is proxmox and casaos (lightly). Casaos is alluring mostly because it seems like an easy on ramp, with lots of visual configuration. I enjoy CLI config, but visual configs are easier to discover settings and options that might not occur to me. I’d ideally favor stability here, as I like to tinker, but don’t have a huge amount of time for it.

Am I on the right track with all this? Any pitfalls? Any must have self hosted software I should be sure to include? Should I set up the storage pool in proxmox first as raid10? Any general advice? Words of encouragement? I’ll take it all.

Apologies if this is the wrong forum — if so, please feel free to delete (and direct me hopefully to a more appropriate locale).

Edit: forgot to mention, system also has a slower ssd boot drive, and a 1070 I plan to pass thru as needed.

  • astrsk@fedia.io
    link
    fedilink
    arrow-up
    3
    ·
    14 hours ago

    I would make the case for proxmox on the machine so you can divvy up the hardware as you see fit— but also setup the hard drives as a zfs1 pool (1 redundancy failure allowed). This way you can make multiple isolated machines or use LXC containers directly for apps, services, etc. while benefiting from ZFS’s excellent performance and reliability. I would say that TrueNAS Scale has been a bit of a letdown for me because it feels bloated, easy to make mistakes with complicated setups, and I have less control over the hardware. I don’t like how updates have fully broken apps. That said it is a reliable ZFS wrapper with more bells and whistles in the UI over what proxmox offers— caveat being that both can do everything if you want to take the time to learn ZFS commands.

    There is also the TrueNAS based alternative HexOS that is more beginner friendly for just getting a nice NAS setup fast while still supporting apps / containers.

    • AliasAKA@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 hours ago

      Yeah, I think I’ll go with proxmox as a first attempt — it seems to fit what I’m looking for and the feedback here has been pretty positive on that front. My main concern now is figuring out how to provision the hdds so that a jellyfin lxc can utilize it, nextcloud could use it, and I can save (configuration) backups to it. I’m comfortable with zfs in general (run that on my desktop), but I was under the impression that raid10 would be more performant with the same redundancy, when using 4 disks in raid10. Any one disk could fail, writes are at the speed of the disk because of mirror, and reads are 2x. I lose usable disk space, but I think 16tb is enough for me (for now of course haha). Am I wrong though on the zfs vs raid10? I guess actually I could use zfs, create a single pool with two mirrored vdevs. I am not sure how that would affect future growth, but should do really well for now. Does that sound like a reasonable thing to do, in your opinion?

  • irmadlad@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    18 hours ago

    I think you’ll love Proxmox. I have a blast with it, however, I am not the selfhost guru, so you may want to wait for someone more authoritative than I. As far as everything running on one container, personally I like to split anything AI off to it’s own VM. That way I can toggle it on or off when needed and it’s not just eating up ram for no good reason.

    I have played with CasaOS. Pretty nice package, especially if you are just getting your feet wet, or just want to be able to quickly spin up containers. In this category there is also Umbrel, RunTipi, or Cosmos Server, to name a few. They all have their pros/cons.

    Tailscale rocks! Simply put. It’s super easy to set up and you can tunnel a crap load of data through it.

    As far as ‘must have’ software, Searxng gets a huge workout on a daily basis for me. If you like tinkering/building work flows, N8N, LangFlow, and Flowise get steady use on my network. I can’t speak to the ‘arr stack’ and I have all the media I could ever want, and I’m not much of a movie watcher, but sky’s the limit based on what you want to do with your server. When you have Proxmox up and running, be sure to check out the Proxmox Helper Scripts. Lots of goodies there.

    Have fun bro.

    • AliasAKA@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      17 hours ago

      Hey, thanks so much for the response, this is great! Love the idea of offloading ai workloads to their on vms to make facilitating managing resources easier.

      Also, big thanks for the recommended software — very helpful list for me to look through, especially on the AI front. Do you have any notes on configuration for those in particular?

      • irmadlad@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        15 hours ago

        I’ve run a bunch of containers and if it would be helpful I could clean it up and donate it to the cause. It’ll take a few days to clean up and maybe clarify anything better. 30 minute 30 mile warranty

  • Ek-Hou-Van-Braai@piefed.social
    link
    fedilink
    English
    arrow-up
    2
    ·
    16 hours ago

    A really easy solution is to just install TrueNAS and the install “apps” from there, it’s basically like using a PlayStore.

    It has some limitations but I think it’s a easy place to start. (bonus if you run it in proxmox)

  • Max-P@lemmy.max-p.me
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    1
    ·
    18 hours ago

    I’d probably do RAID-Z with ZFS rather than RAID10, better space utilization and better error correction. Should be able to easily set that up in the Proxmox web UI.

    Everything else sounds good. Don’t worry too much about it, you will find things you wish you did differently regardless, that’s part of the learning experience.

    • AliasAKA@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      18 hours ago

      Thanks for the reply!

      My understanding was that with only 4 drives, raidz would lower read throughput and not add much space / redundancy. Is that not true? Would you mind giving me a few more details on how you’d set up a 4x8tb raidz array (or could point me to a tool / resource that could help me? I haven’t been able to fully convince myself either way)

      • Max-P@lemmy.max-p.me
        link
        fedilink
        English
        arrow-up
        2
        ·
        17 hours ago

        The performance is a good point. You can do the striped mirror with ZFS too and still get the advantages of ZFS.

        I think you can do all of that through the Proxmox UI, but it shouldn’t be too hard to do on the CLI either. You just make two mirror sets and you’re good to go. ZFS should automatically distribute the load across the two mirrors.

        • AliasAKA@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          17 hours ago

          Amazing, thank you! I think I’m gonna have to be okay with not nailing it on the first go and trialing it out the next few days. Step one sounds like proxmox to me :)