Also tried it with pictrs_url: "http://pictrs:8080" (as described here), but that didn't help either.
Why is lemmy trying to access localhost:8080 rather than pictrs:8080?
Are you running lemmy 0.18.0? It breaks a bunch of internal network connectivity. The short term solution is to add an external network to both the lemmy-ui and pictrs containers, then you can change http://pictrs:8080 to http://your_domain.
Note: there are also some issues in 0.18.0 with comment federation at the moment. Please reply to confirm this comment was seen, thanks!
Well, butter my butt and call me a biscuit. In implementing this, I stumbled upon an issue: I had the url in pictrs_config, when it should have been pictrs.
Now at least the logs are showing an error that matches the toaster:
2023-06-25T13:09:27.753749368Z 2023-06-25T13:09:27.753609Z WARN lemmy_server::root_span_builder: error decoding response body: expected value at line 1 column 1
2023-06-25T13:09:27.753809022Z reqwest::Error { kind: Decode, source: Error("expected value", line: 1, column: 1) }
I already have those containers in an external network, and changing the URL hasn't fixed it.
Oh, this span builder error. Yeah I’ve been seeing that error since I upgraded to 0.18.0. Sorry, I don’t have a solution for this one.
Glad you figured out your pictrs error though! One other thing I did was update my resolve.conf so that valid DNS hosts were making it to the containers. Also try rebooting your host.
One other thing I did was update my resolve.conf so that valid DNS IPs were making it to the containers. Otherwise the containers might not have valid DNS. Also try rebooting your host.
Here is what I did to fix the container DNS lookups failing:
Did you run the chown -R command for the volume bind? Is the pictrs actually up and running? Check docker ps | grep pictrs and see if it is actually running. Also check the logs to see if there are any errors.