22
submitted 3 years ago by blotz@lemmy.world to c/selfhosted@lemmy.world

Does anyone run their own Lemmy instance on a pi? How was the process of setting it up? Were there any pitfalls? How is performance?

all 23 comments
sorted by: hot top new old
[-] blotz@lemmy.world 3 points 3 years ago

Im looking at setting up a lemmy instance on a rpi3 with cloudflared tunnel! I'm curious to see if anyone else has done this and how it was.

[-] Tolstoy@lemmy.world 0 points 3 years ago

Please don't forget to give us updates on your adventure^^

[-] marsara9@lemmy.world 3 points 3 years ago

I was able to get it setup, main things to watch out for:

  • Don't use the provided docker compose file. Or more precisely don't build from source and lookup the correct image tag on docker hub first.
  • The documentation was a bit confusing. This isn't really specific for the Pi but since I was creating a compose file from scratch some of the steps listed didn't quite explain all of the details.

I only used it for testing purposes, but performance was fine (on a Pi4 4gb). Note I only ever had one user.

[-] TheInsane42@lemmy.world 0 points 3 years ago

As I only want to use it for myself as jump-off point (and to mess around a tad) I'm fine with performance on an RPi4 (have the 8 GB version), but I'm struggling to get it next to the rest in my Debian install on it.

Local install fails as I need imagemagick 7 (Debian still had 6.9), and it refuses to compile with imei method. (that script wants to use /usr/local/bin/identify which I think it needs to install itself (part of imagemagick) and the compose file I couldn't get to work with an external (already hosted) postgres.

Any tips? I'm totally new with docker and ansible.

[-] marsara9@lemmy.world 1 points 3 years ago

So in the official docker-compose.yml lines that define where/how to get the image for that application.

For example:

https://github.com/LemmyNet/lemmy/blob/c9e9ff46faa40e2642343effb117693bfa525c5f/docker/docker-compose.yml#L41-L43

build:
      context: ../
      dockerfile: docker/Dockerfile

This tells docker to look for a file called docker/Dockerfile in the parent directory. This means that when you go to call docker compose up -d it will build an image from source using that Dockerfile. For the Pi we don't want this (at least as of 0.17.x; I haven't tested 0.18.0 yet).

Instead we want to use a pre-built image. To do that we need to go to docker hub, specifically: https://hub.docker.com/r/dessalines/lemmy/tags and find the latest tag that matches the architecture of the system we're building on. I assume you're on a Pi4 running a 64bit so, so that gives us 0.17.3-linux-arm64. After you've got that tag we just need to replace those 3 lines above with:

image: dessalines/lemmy:0.17.3-linux-arm64

Now when we go to call docker compose up -d it will pull down that prebuilt image instead of building for source. Btw, you'll want to do the same for the lemmy-ui service.

P.S. I don't have much experience using Ansible, so I can't help here. I normally just SSH directly into the Pi and do everything there.

[-] GustavoM@lemmy.world 2 points 3 years ago

Not yet, but I'm planning to. And I don't think there will be any "pitfalls" at all other than your microsd dying in a couple of months rather than years due to it getting hammered constantly by API requests, etc.

[-] r00ty@kbin.social 2 points 3 years ago

You could plug in a USB SSD or HDD and make sure the DB and other regularly written data goes there. That would pretty much remove the problem.

I would wonder how well it would perform. The limited memory and cpu power surely would make database access not great under even moderate load.

[-] GustavoM@lemmy.world -1 points 3 years ago

You are right -- I completely forgot about those, thanks.

I would wonder how well it would perform.

Something between "usable" to "a complete nightmare" -- depending of how popular the lemmy instance is. Which would scare new users away, leaving it as a "cool kids only" thing. Then again, theres the fact that the power draw is little to none, which is very important regarding most self-hosting stuff -- "can't use it if I can't maintain it".

[-] jeena@jemmy.jeena.net 1 points 3 years ago

I don't think there should be any problems, lemmy is a fairly lightweight web application, it's compiled so no big overhead of some runtime like ruby in case of mastodon. I haven't tried it on a raspberry Pi, but on my server the load is always just around 0.1

The only bottleneck I could think of was Postgres, but I've been running postgres on raspberry pies without any problems before too.

this post was submitted on 26 Jun 2023
22 points (95.8% liked)

Selfhosted

62657 readers
574 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS