So I set up a self-hosted lemmy instance to play around with but I’m a bit confused by how the federation system is supposed to work.
I followed these instructions to get setup:
https://join-lemmy.org/docs/administration/install_docker.html
I then found that I was having issues deploying the lemmy proxy as it could not find the nginx config. I was able to resolve that issue by adding the nginx internal config from the git to my instance like so:
wget https://raw.githubusercontent.com/LemmyNet/lemmy-ansible/main/templates/nginx_internal.conf
I noticed that I couldn’t search for any instances from my personal instance, so in the “Allowed Instances” in the server settings on the web UI I added: lemmy.ml lemmy.world programming.dev and sopuli.xyz
I figured that adding some of the major instances should kick-start the federation process and allow it to find other things, but it seems it does not.
Now I’ve been able to subscribe to a couple communities from my instance, memes@lemmy.ml and lemmyshitpost@lemmy.world and of course this Selfhosted community. However, I still cannot seem to add others, for example it still fails to find anything when I try to add memes@sopuli.xyz
Additionally, I can’t seem to see comments from most other users on most of the posts that I do see for some reason. Even if those users are from one of those instances I’ve allowed, I still don’t see them.
Does anybody have any idea why this might be? For example, I’m quite sure I’m not going to see any of the comments on this post even though I posted it, I’ll probably have to come back and check on another account to reply and I really don’t understand why and would like to find a fix.
Thanks.
I am also a novice at hosting my own instance but I think I have some tips:
First, don’t use the allowed instances list. I believe having any items in that list blocks any instances not in the list. So you’ve effectively defederated from all instances that aren’t lemmy.ml lemmy.world programming.dev and sopuli.xyz.
Second, make sure your languages are set properly. In the admin page there is a big list of languages. Use ctrl+click to select all the languages you want to see. Make sure that
Undetermined
is always selected. On mine I have that and English, you might also want German and some others but that’s up to you.Third, bump up your federation worker count. I doubled mine to 128.
Lastly, use the search to connect to new communities. There isn’t really any automated discovery from known instances, you need to manually be searching for anything you want to show up in your instance. I use the default admin account to subscribe to every community I want to show up in all.
Federation, especially from lemmy.world and kbin.social is also being kinda funky right now with so many new users. So I would also give it a little time for any changes to take effect.
And feel free to check out
all
on my instance if you want to compare how comments and communities are coming through to another single user instance.Thanks for the description, seems a little counterintuitive to me, but I think I get it now. I removed the allow list and after some time it cleared up quite a bit, also rebooted it and then the “hot” page looked a lot better. I think another issue is that my instance has a pitiful amount of resources and is very slow so it also just takes a long time to get synced up with new communities but it’s definitely better now after some days.
deleted by creator
This looks pretty cool, I might have to check it out later, thanks. I was a little disappointed that you need to add all the other communities manually to get them on “all”. I’m a little worried I need to upgrade my tiny instance before I try automatically adding everything though.
Allowed instances just whitelists them. Federation takes time especially for the large ones to connect to your instance and start working well. You also need to subscribe to remote communities for it to continue updating. There is also currently a timeout that large instances are dropping sending updates (upvotes / down votes / comments) to all connected instances because of them having to update 200k instances for each event. There is a fix in the pipeline to increase the timeout though, so hopefully that’ll be better in the near future.
I had issues searching for Lemmy communities until I updated my docker-compose to give the “lemmy” container it’s own network.
In my very limited experience with my personal instance, I’ve had to give federation time for it to start working as expected. When I started out, sometimes I wouldn’t find posts or my comments wouldn’t show on the instance a post came from and whatnot, don’t notice that anymore. Could easily be something wonky on my end though, I’m not sure.
One thing that I still find extremely confusing and unintuitive is searching for a not yet federated community doesn’t return any results, but also immediately makes the community visible in the “all” view if it does indeed exist. I was under the impression it’d just show the community link there and then so I assumed it was broken for the longest time, for all I know that’s actually how it’s supposed to go and I still have something broken somewhere lol.When you search for a new community on another instance it fetches the latest posts from it so it doesn’t usually show in the search for a little bit. This could be tweaked with a better API/interface to make it load though (ie notice it’s a new community and wait for it to download before search returns)
Finding new communities with the Lemmyverse.net explorer is easy, I highly recommend it!
Thanks for this advice, been adding some communities from there and it’s definitely improved things significantly.