this post was submitted on 15 Feb 2024
352 points (100.0% liked)
196
16582 readers
1948 users here now
Be sure to follow the rule before you head out.
Rule: You must post before you leave.
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I run my own tiny instance so that I can feel special. And so that I can overspend on cloud infrastructure and stress out about uptime.
beautiful human being
How does federation work with hosting your own instance? Do you need to request federation with instances or is yes the default?
Was thinking of hosting my own instance just to tinker around with
Federation is open by default but I never post anything to my home instance because no one is there. If I started posting on my own instance other people could theoretically subscribe to my communities the same way I subscribe to communities on other instances but since there are only two users on my instance it's pretty unlikely people would find it without me crossposting somewhere.
Benefits of me running my own instance are that I control my own user account and I'm not at the whims of another admin. I subscribe to content on lots of other instances and it all federates into mine which means I've been able to browse content when some of the big instances go down. I've got my own entrypoint to lemmy which feels a bit more neutral than choosing another instance to be 'home' for my user.
Downsides are that I have to pay for and maintain it myself which can sometimes be a serious pain. Because my instance only has two users my 'all' feed is basically a copy of my 'subscribed' feed plus a couple posts from communities that my wife subscribes to that I don't. That can make it hard to find new content without using something like lemmyverse.net.
If you're thinking about hosting your own instance I encourage you to give it a shot. I'd highly recommend the lemmy-ansible project on github which is both a guide and playbook for deploying the various lemmy docker containers using ansible. I'm a sysadmin by trade so running services like this is something I'm pretty familiar with but I've still found myself frustrated by Lemmy more than once. It's still a young project and can be frustratingly brittle and difficult to troubleshoot. That being said it's been a great learning experience and makes me feel like I'm doing my part to contribute to a better and more decentralized web.
Great write up, thank you
Some follow up, what are the costs related?
I assume you have to pay for a domain.
I already run my own media server from home and I have a spare PC, are you just saying the electrical costs or do you pay for server hosting?
I host a lot of software internally on my home network too but I didn't want to run Lemmy from my home so I host it in AWS which is not particularly cost-effective. The bulk of the cost is from the vps. I'm not paying on-demand pricing but it's still more expensive than I'd like. I also pay for a static IPv4 address, object storage (for the image hosting) and like you mentioned before, the domain. It's roughly $30 per month although that cost has a small overlap with another service I run on the same vps.
I might start hosting Lemmy locally too at some point mostly to cut costs. I'd like to isolate my more internet-facing software like Lemmy to a separate LAN isolated from the rest of my home network. I have a few things at home exposed to the internet through a reverse proxy right now but with Lemmy being very open and public by it's nature I don't want it mixed in with the rest of my network so I'll probably buy a small block of IPv4 addresses from my ISP before I move it.
But if you switch to "all" instead of subscribed and sort by active or hot you see the popular posts on all of lemmy, right? And you see all the communities under /communities link?
No. Only communities that at least one local user is subscribed to are federated into an instance.
And I realize I made a mistake in the feed names. My local feed is completely empty. My 'all' feed is what I was intending to describe with that comment. It is just the communities that either my wife or I have subscribed to. I haven't done this yet but I was reading about a project that admins can add to their instance that effectively creates a phantom user to subscribe to lots of content all across the fediverse. It's intended to help bridge the gap between very small instances and the rest of the fediverse by ensuring that your 'all' feed actually aggregates content from other instances without requiring you to subscribe.
I'm blanking on the name and can't find the posts I saved about it, but I'd really like to try it out to make it easier to come across new communities organically without having to hunt them down.
Ah thanks, very interesting to know.
It's very unlikely I'm going to run my own instance, although I would like the freedom to tinker with the web client. Probably going to try to just run the UI client locally at some point.
Nothing manual required, you can federate with any other instance as long as you're not on their ban list.
You basically use your instance's search to search for a community on the remote instance, then your instance requests the top (5?) posts from the community on the remote instance. Once a user subscribes, all new posts going forward will be sent to your server via the federation.
At least I think that's how it works, haha.
How does lemmy run for you? I get weird blocks of bad gateway every once in a while
It runs perfectly fine most of the time and then will occasionally lock up my entire server until I reboot.
I've been working on getting some better monitoring and log aggregation set up so I can troubleshoot what is actually happening but it's a bit slow going. As of now I can't tell if the database is getting overloaded, if the frontend is getting spammed, or what is going on really.
My instance has two users and it runs on a VPC with 2 CPUs and 4GB of RAM.
Check the ram usage on postgres. Theres a memory leak issue thats being monitored with a proposed fix in the next version (which is upgrading to the newer version of postgres)
Thank you! I was secretly hoping someone might have a quick suggestion of something to try. I'll see what I can find out.
Yeah no problem! My workaround solution is simply just restarting the postgres container when i notice ram usage spiking
Usually by the time I notice the server is already unreachable over SSH but I've been considering adding manual healthchecks to my containers. Paired with the docker-autoheal project it's been a really low effort way for me to keep services healthy without a lot of babysitting. I'm more nervous about implimenting it for something like a stateful database though, but I suppose it's no different than manually issuing a docker restart command.
Same here! My background is in systems architecture, so I love this stuff.
Though I run mine on my own "private cloud". Even though it sounds like an amateur operation I've got the proper safety nets in place (backups, redundant power, firewalls, etc). A lot of instances are public cloud which is cool and I have nothing against that, I just wanted to do something a little different.
I have no idea how to get people to join but I hope to have some friends in here some day :D