this post was submitted on 27 Feb 2025
9 points (100.0% liked)

Lemmy Support

4739 readers
72 users here now

Support / questions about Lemmy.

Matrix Space: #lemmy-space

founded 5 years ago
MODERATORS
 

Hello all,

I am trying to understand what I need to do to ensure that my Lemmy instance can be federated, found, and usable with other instances and users. https://geekroom.tech/ is my instance.

Currently, the issues I'm running into are:

  • If I search for my own [email protected] from any other instance, nothing comes up.

  • When I try to add my instance to FediDB.org, it shows that my "Instance is invalid, unreachable or unavailable."

  • When I subscribe to other communities from my instance, I am seeing posts, but no comments appear at all. I have verified that those same threads appear on the instance that they are generated on. (My understanding is that I should be able to see these comments and be able to respond to them)

  • All of the other communities that I have attempted to subscribe to are showing "Subscribe Pending", but the 2 communities that I've created on my instance are obviously showing as Joined.

  • If I comment on a post from within my own instance, that post does not show up on the original post. (again, may be my misunderstanding of how to use Lemmy lol)

I know I'm asking a lot, but it seems to me that obviously something is misconfigured, or I'm using Lemmy wrong.

What am I doing wrong? I can post configs if needed.-

Edit1: Looks like, based on some changes I made here: https://lemmy.world/comment/15359241, that federation is now partially working as it is sending out activities... however, after waiting some more time eventually it shows that there are more activities that are behind (possibly after trying to edit a comment that I made and was trying to get it to post something to the feed)

Edit2: I have attempted to unsubscribe and resubscribe and it appears that is not working even after 24 hrs. The logs are showing when I am attempting to subscribe, and then the logs show that I am 1 activities behind for that action on all the subscribed servers. In addition, I changed the following:

set $proxpass "http://127.0.0.1:10633/";

to

set $proxpass "http://127.0.0.1:1234/";

However, I'm still not seeing any action on being up to date. I'm not seeing any new posts from other communities and I'm not seeing my comments on those remote subscribed communities showing up on the original posts.

Edit3: After doing some more digging, I believe I have found another part of the issue. So there's the NGINX reverse proxy that I have installed at the host level, which redirects to port 127.0.0.1:10633 for the geekroomtech-proxy-1 container to serve content from.

If I set the initial $proxpass value to port 1234 it gives me a 502 bad gateway when doing the curl tests. If I set it as: set $proxpass "http://127.0.0.1:10633/"; then it returns values properly.

However, the issue becomes when I have these next two conditional sections that breaks the curl tests and goes back to 502 bad gateway:

        if ($http_accept = "application/activity+json") {
        set $proxpass "http://127.0.0.1:8536/";
        }
       if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams/"") {
       set $proxpass "http://127.0.0.1:8536/";
       }

When inside the internal proxy that lemmy provides, I can issue: curl -H "Accept: application/activity+json" http://lemmy:8536/c/rDataHoarder and returns information properly.

So... I exposed the ports 8536 on the Lemmy container, and magically, I'm no longer getting the 502 bad gateway errors.

ports:
      - "127.0.0.1:8536:8536"

While I'm not seeing any failures for activity trying to come in, I'm still seeing communities aren't updating, subscribes are still pending, and I'm still not getting any activity showing up in the feel.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 1 points 21 hours ago* (last edited 21 hours ago) (4 children)

It appears that adding the below code has seemingly resolved the not receiving inbox messages part, but has not resolved anything else.

First, I disabled the Cloudflare proxying because I saw the troubleshooting guide mentions that Cloudflare proxy may cause issues.

Second, added the following:

# Attempting to resolve federation
set $proxpass "http://127.0.0.1:10633/:";
if ($http_accept = "application/activity+json") {
set $proxpass "http://127.0.0.1:8536/";
}
if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams/"") {
set $proxpass "http://127.0.0.1:8536/";
[–] [email protected] 1 points 15 hours ago (1 children)

You should put the lemmy-ui's port (8635) first then in the conditions blocks, the lemmy's port

set $proxpass "http://0.0.0.0/:{{ lemmy_ui_port }}";
if ($http_accept = "application/activity+json") {
set $proxpass "http://0.0.0.0/:{{ lemmy_port }}";
}
if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams/"") {
set $proxpass "http://0.0.0.0/:{{ lemmy_port }}";
}
proxy_pass $proxpass;

https://join-lemmy.org/docs/administration/troubleshooting.html

[–] [email protected] 2 points 7 hours ago* (last edited 7 hours ago) (1 children)

So when I look at the docker-compose file, the only exposures are 10633 on nginx-proxy which routes to 8536. Docker ps -a is showing lemmy-ui as 1234/tcp and lemmy as 8536.

CONTAINER ID   IMAGE                                   COMMAND                  CREATED        STATUS                  PORTS                               NAMES
530dd3852e24   nginx:1-alpine                          "/docker-entrypoint.…"   15 hours ago   Up 15 hours             80/tcp, 127.0.0.1:10633->8536/tcp   geekroomtech-proxy-1
e5976396c4f2   dessalines/lemmy-ui:0.19.9              "docker-entrypoint.s…"   15 hours ago   Up 15 hours (healthy)   1234/tcp                            geekroomtech-lemmy-ui-1
a91f86523a95   dessalines/lemmy:0.19.9                 "lemmy_server"           15 hours ago   Up 15 hours             8536/tcp                            geekroomtech-lemmy-1
15c8a65b2e02   asonix/pictrs:0.5.16                    "/sbin/tini -- /usr/…"   15 hours ago   Up 15 hours             6669/tcp, 8080/tcp                  geekroomtech-pictrs-1
135f75ceccf4   pgautoupgrade/pgautoupgrade:17-alpine   "/usr/local/bin/dock…"   15 hours ago   Up 15 hours (healthy)   5432/tcp                            geekroomtech-postgres-1

So you're saying it should look like this instead?

set $proxpass "http://0.0.0.0/:1234";
if ($http_accept = "application/activity+json") {
set $proxpass "http://0.0.0.0/:8536";
}
if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams/"") {
set $proxpass "http://0.0.0.0/:8536";
}
proxy_pass $proxpass;

is that right?

[–] [email protected] 1 points 1 hour ago* (last edited 1 hour ago) (1 children)

yes 😅,
For me thats working like this anyway, ^^

[–] [email protected] 1 points 1 hour ago

I had to set it as this because if I used port 1234 for lemmy-ui then it would give me 502 bad gateway errors.

        set $proxpass "http://127.0.0.1:10633/";
        if ($http_accept = "application/activity+json") {
        set $proxpass "http://127.0.0.1:8536/";
        }
        if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams/"") {
        set $proxpass "http://127.0.0.1:8536/";
        }

But this works.

load more comments (2 replies)