I’m thinking about buying a Raspberry Pi to start my self-hosted journey. I have three usecases in mind: Navidrome server, Jellyfin server and a Pi-hole network ad-blocking. Can a single machine (like a Raspberry Pi) run these operations simultaneously? Thanks in advance!

  • Cousin Mose@lemmy.hogru.ch
    link
    fedilink
    English
    arrow-up
    5
    ·
    4 hours ago

    Define “server”:

    If you mean any process that serves on the network well then of course you can.

    If you mean multiple containerized stacks acting as a service then yes, you can do that too.

    If you mean multiple operating systems, I’m not so sure but I can’t imagine that it’s impossible.

  • BartyDeCanter@piefed.social
    link
    fedilink
    English
    arrow-up
    1
    ·
    3 hours ago

    Easily! My Pi runs PiHole and a print server and I’ll could probably run almost my entire stack in it if I wanted. Jellyfin would be the hardest due to transcoding CPU usage, but it’s probably ok for one stream at a time.

    The other issue for me would be storage. Since I have a 32TB NAS I run everything that requires large storage on it, but a USB RAID attached to a Pi would probably work just fine.

    The other issue is RAM. I rarely hit 8GB, but do use more than 4GB fairly regularly.

  • habitualTartare@lemmy.world
    link
    fedilink
    English
    arrow-up
    9
    ·
    7 hours ago

    As other commenters have said yes you can run these depending on the Pi. Do note however if you need transcoding, A Pi is not recommended by jellyfin:

    https://jellyfin.org/docs/general/administration/hardware-selection#potentially-problematic-hardware

    Most Single Board Computers (SBC): Most SBCs (including the Raspberry Pi, especially the Raspberry Pi 5) are too slow to provide an acceptable Jellyfin experience as they often lack proper support for hardware acceleration. If you really want to run Jellyfin on an SBC, you may wish to consider models based on the following platforms: Rockchip RK3588 / RK3588S, Intel Core, Intel 12th gen N series

  • Scratch@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    16
    ·
    8 hours ago

    I have a Pi 4 that is running a bunch of stuff, including AdGuard(PiHole alternative), JellyFin, Radarr, Sonarr, Lidarr, Readarr, qBitorrent and some others.

    I used DietPi as the OS. Would recommend as it has an AppStore like experience, with pre-configured versions of things ready to install.

    • Onomatopoeia@lemmy.cafe
      link
      fedilink
      English
      arrow-up
      3
      ·
      3 hours ago

      DietPi is such a game changer.

      Currently running it in a VM just for PiHole, and the ease of installing anything is nice.

  • BananaTrifleViolin@piefed.world
    link
    fedilink
    English
    arrow-up
    11
    ·
    7 hours ago

    Depends on the Pi in terms of how much you can do, but yes.

    I have a Pi 5, and I’m running Pi Hole, Nginx porxy manager, Jellyfin, Syncthing, Paperless NGX, and a full servarr stack (including Qbittorrent and a VPN). No issues; 4.6 gb out of 7.9gb ram in use, and no appreciable bottlenecks.

    I would just caution that things like Jellyfin are a moveable feast - I am 1 user streaming content on my own to 1 device without issues at 4k. But more simultaneous users and if you start depending on transcoding your mileage may vary. So yes Jellyfin and other services will run fine, but any server can be put under pressure if it’s not adequate for the actual usage.

  • AbouBenAdhem@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    7 hours ago

    If you can run multiple applications, you can run multiple servers—a server is just an application with a network interface.

  • ShutUpWesley@piefed.zip
    link
    fedilink
    English
    arrow-up
    4
    ·
    7 hours ago

    I used to have over 20 services running on a Pi4, I wouldn’t suggest running that much, but it’ll work

  • curbstickle_lw@lemmy.worldM
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    8 hours ago

    Up until the point the resources available (CPU/ram/storage) become a problem.

    That said, managing those apps as installations can be troublesome, which is why people like podman/docker. Updates are more contained, system updates don’t break services, and vice-versa.

    A more comprehensive option is to use Proxmox or similar to manage services as a combination of Virtual Machines, LXC’S (Linux containers), and maybe podman/docker on a VM. Note that Proxmox techincally supports importing a docker container as an LXC, but this is a one-time action. Not recommended. (EDIT: For the record, there is a Proxmox on pi effort, but its community supported not Proxmox supported as of the last time I looked.)

    Navidrome and pihole are the easy ones on that list also. Jellyfin itself is easy, but you aren’t going to be transcoding video on the fly, so make sure its in a format that is friendly to all of your devices, transcoding in advance if needed.

  • libewa@feddit.org
    link
    fedilink
    English
    arrow-up
    3
    ·
    8 hours ago

    If the machine has enough power (which for a Pi is heavily varying between generations), yes, you absolutely can! Look into something like Docker Compose (or even running NixOS).

    • pdl@social.tchncs.de
      link
      fedilink
      arrow-up
      2
      ·
      7 hours ago

      @libewa @SpiceDealer You do not need docker for running more than one service on a RasPi or another computer. Just configure the web services to listen on an arbitrary port on localhost. Set up a reverse proxy (you can do this with traefik, nginx, apache2 …) and expose your services with unique names on standard port 443.
      Of course, many services are run via docker in a very comfortable way.