Good news selfhosted crowd! I pitched the idea of setting up a server, and she is down with the idea!

I want to run Linux and host things like Jellyfin, Audiobookshelf, Navidrome, maybe Plex (I currently host it off my Mac desktop but would move it to a dedicated server).

I know you can host Plex et al on something like a Raspberry Pi, but I want a bit more power. I want something that can push at least 2-3 4K streams.

I’m considering targeting 12th gen i5 with 16GB DDR4. Maybe 32GB if I can swing it. Is that overkill? I know you want 8th gen Intel for hardware transcoding of either x265/HEVC or AV1 (probably the former as the latter is newer).

There are other projects I’d like to run. I’d like to be able to host my own LLM/AI but I’m not trying to go performance overkill here. This would be my first server.

I am somewhat comfortable using the command line, and I would be remoting into the server via my Macs (I have a desktop and a MacBook). However, Linux can run Windows games via Proton and that’s something I’m interested in for some older titles that aren’t on Xbox (like Deus Ex, which came out in 2000 and should run on integrated graphics). I’m not inexperienced with Linux and have been using it off and on (mostly off unfortunately) for over 30 years. My go-to would be Ubuntu, but I’ve heard great things about KDE lately and I know the Internet is in love with Mint these days. Would the distro really matter all that much as long as I have the required services?

  • curbstickle@anarchist.nexusM
    link
    fedilink
    English
    arrow-up
    19
    ·
    24 hours ago

    Distro kind of matters.

    Its a server, stability is the top priority. I’d avoid Ubuntu personally, and recommend Debian and Debian variants. For your first server (and your 4th+), I’d suggest proxmox. Its Debian with virtualization and a web interface, making it easy to manage services.

    I’d also mention that you do not want a DE for your server. Its a lot of overhead for no real benefit, instead you should think of it as a headless machine you can remotely access - which is also what will make proxmox handy for you.

    Intel wins in transcoding in most scenarios, so an intel-based system with an iGPU is a solid target. Full transcoding of AV1 starts with 14th gen, but that includes to AV1. For decode of AV1 for transcoding, 11th+. For anything else, 7th+.

    With ram you can do more with more, but leveraging virt will make the load a lot lighter. Ive got systems with 32GB, but they are also hosting whole ass VMs and not just lxc’s.

    • lemmyvore@feddit.nl
      link
      fedilink
      English
      arrow-up
      2
      ·
      10 hours ago

      you do not want a DE for your server

      While that’s technically true, in some cases you might want a graphics stack after all. For example if there’s a TV nearby you can get some cool benefits from being able to output directly to it.

      But I agree that starting with a desktop distro is probably not the way to achieve it.

      • curbstickle@anarchist.nexusM
        link
        fedilink
        English
        arrow-up
        2
        ·
        9 hours ago

        I’d still say no.

        You don’t really want a desktop task to crash and take down all of your services in one shot. As a VM with GPU pass through maybe, but not really in that beginner territory.

    • CerebralHawks@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      12 hours ago

      Heard good things about proxmox. What do you mean it’s Debian? It’s an OS? I thought it was some kind of VPN thing that gets your services out onto the web so you can access them remotely or something like that.

      I’m inclined to agree I don’t need a DE (desktop environment, though I suppose I’m the only one who had to think about that for a second as the new guy) but I was also interested in checking out some Steam games. Would that be something I could spin up separately (Steam via Proton) or would that be better as its own project with its own goals?

      14th gen is kind of a price jump, but if I’m only targeting 16GB RAM (per another reply), it might be doable. Having my Mac just convert the AV1 to HEVC (or just avoiding AV1 entirely) sounds like it would make more sense. I’m seeing a lot of refurb deals on 11th gen i5s and that’s what I was thinking.

      What are LXCs?

      • curbstickle@anarchist.nexusM
        link
        fedilink
        English
        arrow-up
        1
        ·
        9 hours ago

        Proxmox is based on Debian the way Ubuntu is, but more highly focused and without departing from main Debian strategies.

        Proxmox is a kernel and set of tools for managing virtual machines and containers, in this case LXCs. These are different from docker, they share the kernel with the host but have isolation at namespaces (user id’s, process trees, network views, etc). They boot in seconds because they bypass hardware virtualization like you’d have with a VM.

        I’d say gaming is better off as its own project effort. You could do things like GPU pass through and a dedicated VM for gaming, but you would be adding a pretty hefty layer of complication. If you dont need to convert av1 to something else, I’d just go with a 7th+ gen iGPU, and dont worry about it. Mine are 7th-10th gen, I have dozens of TBs of media, and they just chug along without issue handling somewhere between 4 and 6 streams at typical top use, mostly streamed without transcoding anyway. AV1 for the source file, you’ll be transcoding almost everything because most devices dont support native decode anyway, so I don’t personally find it worth it yet.

        Just to mention, your Mac (if its an M series) can handle LLMs reasonably. I have an M2 Mac mini that runs some models, but my web interface for accessing those models is hosted on an LXC on one of my proxmox nodes.

        It mostly gets used for local audio transcription and summaries, though occasional I’ll let it do other things like autocompletes for code (but not generating code, I don’t consider generated code to be useful).

      • zener_diode@feddit.org
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 hours ago

        Debian is the OS.

        Proxmox builds on Debian to turn it into a hypervisor. That’s an OS for managing VMs and containers. Proxmox (like most hypervisors) gives you a handy webinterface.

        There are easier hypervisors to use, but Proxmox is great for learning, and allows you to expand well later.

        tbh, except for gaming and AI, you don’t need nearly as much processing power as you might think. I run most of my stuff on a (fairly new, can’t remember which one exactly) i5, and it sits at an average 2-3% CPU usage, with the maximum its recorded being 10.9% (there’s two VMs and 8 containers running on it). 11th gen i5 will probably be more than enough to start with.

        In my non-professional opinion, what you really want to look at is how much power your system is going to use when idle, since that’s what (small) servers are doing most of the time. This is not something specified by manufacturers, and it depends on all the parts going into the computer (CPU, mainboard, PSU, fans, how the BIOS is set up, …).

        I would also recommend getting at least 16 GB of RAM (honestly I would say 32, if not for the current prices). Containers don’t use too much, but if you want to set up VMs for services, each VM will want at least 2-4 GB for itself.

        LXC-Containers (https://en.wikipedia.org/wiki/LXC) are like extremely lightweight and slightly less secure Linux VMs. They are similar to Docker, but while Docker is containerizing applications, LXC containerizes Linux distros.

    • frongt@lemmy.zip
      link
      fedilink
      English
      arrow-up
      4
      ·
      24 hours ago

      Yup, proxmox is great.

      Note that you can’t (or rather, shouldn’t) run docker containers on proxmox. Most people run a vm and then docker inside that. And yes, I use Debian for it

      You can give proxmox a docker container reference, but it’ll download and convert it to LXC, which means you can’t update the container. You’d have to update the container’s os and the app manually, or redeploy the container and reattach the storage.

    • femtek@lemmy.blahaj.zone
      link
      fedilink
      English
      arrow-up
      2
      ·
      24 hours ago

      If I’m running Ubuntu server can I backup my docker files and will Debian find my mdam raid without issue?

      • curbstickle@anarchist.nexusM
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        20 hours ago

        For mdadm, it stores the metadata on the drives themselves. As long as your os is separate, yes, it should be just fine and detect automatically. After install it should just be a mdadm --assemble --scan and off to the races.

        That said, I will always recommend backups. You never know what will happen.

        In terms of docker, yes you can back things up and move them over. That said I recommend having your docker contents that need to be persistent as part of a mount somewhere, so that instead of needing to copy them around, you just have a compose that points to a mount.

        Makes backups easier too.

        • femtek@lemmy.blahaj.zone
          link
          fedilink
          English
          arrow-up
          2
          ·
          22 hours ago

          Yeah, I’m thinking of getting a sata ssd and putting it in one of the hot swap bays as I have 6/8 filled with 14tb HDDs is raid 6. Then putting all the docker stuff there so it’s not on the boot nvme.