I’m interested in possibly hosting my own Lemmy instance - just for my own account. I was thinking of hosting it on Raspberry Pi (possibly the 1GB Pi 4 B), but I couldn’t find much for definitive information on what the hardware requirements would be for such an instance to know if this is even possible. How much storage is required? Is the Pi 4 CPU powerful enough? How much memory?

  • InverseParallax@lemmy.world
    link
    fedilink
    English
    arrow-up
    14
    arrow-down
    1
    ·
    1 year ago

    Pi4 is powerful enough, barely. 1GB is too low, is there a 1GB Pi4? Thought it was 2GB min? Think recommendation is 4GB min, 8 better.

    Storage is the real issue, it takes a lot a day, but it’s all based on unique communities subscribed on the server, so if you have 4 accounts all looking at the same 8 communities it’s the same as 1 guy looking at those 8 communities.

    4GB/day for a lot of communities, obviously less for less.

  • state_electrician@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    10
    ·
    1 year ago

    My biggest concern with hosting it on a Pi is storage. SD cards are not made for write-heavy applications like Lemmy. If you want to host it on a Pi, I suggest adding a real hard drive over USB and configure Lemmy to use that for storage.

    • Jtee@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      While I agree, it seems like OP only wants to house his account on his instance, and be federated so he can browse externally

        • Kalcifer@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 year ago

          Please correct me if I am wrong, but this feels like a flaw with how Lemmy (perhaps other fediverse apps as well, I’m not sure) is designed. Why do I need to store all posts made to a community that one of the users on my instance subscribes to? Would it not be better to simply store my user’s posts, and comments, and the posts made to any communities hosted on my instance? Why do I need to store information from other instances, and users?

          • state_electrician@discuss.tchncs.de
            link
            fedilink
            English
            arrow-up
            2
            ·
            1 year ago

            It would put the more popular instances under enormous stress, if they had to serve every single subscriber from any other instance. This would also kill the user experience. It’s much better to serve everything locally, so that an instance admin can scale their resources to the number of users on their instance, a number they know.

            I actually am interested to see how the fediverse’s concept of federation scales out, as numbers keep growing. Even with just instances syncing between each other, I feel that this might be too much at a certain point.

            • Kalcifer@lemmy.worldOP
              link
              fedilink
              English
              arrow-up
              1
              ·
              1 year ago

              It would put the more popular instances under enormous stress, if they had to serve every single subscriber from any other instance.

              From what I understand, media (images, videos, etc.) is not cached. Does that not mean that, in the worst case where every post contained an image, the instance would be serving every subscriber, anyways?

              • state_electrician@discuss.tchncs.de
                link
                fedilink
                English
                arrow-up
                3
                ·
                1 year ago

                For binary data that is correct, yes. But that is stuff an instance admin could choose to hide behind a CDN, as it’s easily optimized and cached.

        • Jtee@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 year ago

          Oh, my misunderstanding. I didn’t realize that would be written to his own db like that

  • Xylight (Photon dev)@lemmy.xylight.dev
    link
    fedilink
    English
    arrow-up
    10
    ·
    1 year ago

    On my $5 linode server with 1 gigabyte of ram and 1 CPU core, it runs okay. Storage will be my biggest issue, swap is always full, and memory usage is about 70%

  • thejoker8814@lemmy.world
    link
    fedilink
    English
    arrow-up
    8
    ·
    1 year ago

    I’m not sure if it’s still valid, but Oracle Cloud Infrastructure (OCI) had a 4 vCPU, 24 GB RAM, 200 GB HDD free tier. No costs, ever! You could sign up there and setup an even bigger instance.

      • melc@feddit.nl
        link
        fedilink
        English
        arrow-up
        8
        ·
        1 year ago

        Their free tier is prone to being shut down without warning, though.

        It kinda is too good to be true.

        • thejoker8814@lemmy.world
          link
          fedilink
          English
          arrow-up
          3
          ·
          1 year ago

          True, but for playing around with lemmy and doing some test’s it’s ideal - and it’s free! In case you are serious about hosting a lemmy instance, there should be at least some sort of backup/ disaster recovery strategy in place.

  • Qazwsxedcrfv000@lemmy.unknownsys.com
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    If you, as the sole user, are not subscribing to dozens if not hundreds of communities, 1GB should be barely okay. As others have pointed out, it is storage that requires more attention with a Pi 4B.

    • Kalcifer@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      1 year ago

      it is storage that requires more attention

      Please correct me if I am wrong, but this feels like a flaw with how Lemmy (perhaps other fediverse apps as well, I’m not sure) is designed. Why do I need to store all posts made to a community that one of the users on my instance subscribes to? Would it not be better to simply store my user’s posts, and comments, and the posts made to any communities hosted on my instance? Why do I need to store information from other instances, and users?

      • i_lost_my_bagel@seriously.iamincredibly.gay
        link
        fedilink
        English
        arrow-up
        4
        ·
        1 year ago

        It’s caching posts from other servers so that if you have an instance with a few hundred or thousand people on it and they all open the home page you don’t send out thousands of requests for each post and end up DDOSing a bunch of other servers.

        • Kalcifer@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          1 year ago

          I don’t really understand this reasoning. Some server would still need to receive those requests at some point. Would it not be better if those requests were distributed, rather than pounded onto one server? If you have a server caching all the content for its users, then all of its users are sending all of those requests for content to that one single server. If users fetched content from their source servers, then the load would be distributed. The only real difference that I can think of is that the speed of post retreival. Even then, though, that could be flawed, as perhaps the source server is faster than one’s host server.

          • KairuByte@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 year ago

            The data does get pulled, but only if it is “old.” If you just pulled 0.5 seconds ago, you don’t even need to check.

  • AngryDemonoid@lemmy.lylapol.com
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    I’ve got a Vultr VPS with 1GB of ram with just Lemmy and a reverse proxy. RAM usage is right below 50% most of the time. I never looked when I first spun it up, so no idea how quickly usage is going up, or if it is going up at all.

  • Jtee@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I was thinking of doing the same just with an lxc (Proxmox). Your Pi should be enough based on a few comments. I’d give it a try