Skip Navigation
Lemmy Support @lemmy.ml dotmatrix @lemmy.ftp.rip

[Resolved] Can't upload pictures

So I'm currently trying to set up an instance, and I'm unable to upload pictures. The following toaster appears: https://imgur.com/d0MUhUb

And in the logs I see this:

2023-06-25T10:48:11.127198782Z 2023-06-25T10:48:11.127080Z  WARN lemmy_server::root_span_builder: Request error: error sending request for url (http://localhost:8080/image): error trying to connect: tcp connect error: Address not available (os error 99)
2023-06-25T10:48:11.127262799Z Reqwest(reqwest::Error { kind: Request, url: Url { scheme: "http", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("localhost")), port: Some(8080), path: "/image", query: None, fragment: None }, source: hyper::Error(Connect, ConnectError("tcp connect error", Os { code: 99, kind: AddrNotAvailable, message: "Address not available" })) })

I have a pictrs container up, and set the following options in lemmy.hjson:

  pictrs_config: {
    url: "http://pictrs:8080"
    api_key: "apikey"
  }

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?

Edit: This has been resolved, thanks to @slashzero@hackbox.social: https://lemmy.ml/comment/948928

24
24 comments
  • 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!

    • I can see your comment on my instance running 0.18.0!

    • I've updated to 0.18.0 as well and can see your comment

    • 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.

  • 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.

    • I did.

      dot@deepthought:~# ls -al /sharedfolders/apps/lemmy/volumes/pictrs/
      total 12
      drwxrwsrwx 3  991  991 4096 Jun 22 20:24 .
      drwxrwsrwx 5 root root 4096 Jun 25 09:34 ..
      drwxr-sr-x 3  991  991 4096 Jun 22 20:24 sled-repo
      
      dot@deepthought:~# docker ps | grep pictrs
      14bd3db41d50   asonix/pictrs:0.4.0-beta.19                            "/sbin/tini -- /usr/…"   4 hours ago    Up 4 hours            6669/tcp, 8080/tcp                                                                                    lemmy-pictrs-1
      
      dot@deepthought:~# docker logs lemmy-pictrs-1
      2023-06-25T07:34:38.379801Z  INFO actix_server::builder: starting 6 workers
      2023-06-25T07:34:38.379855Z  INFO actix_server::server: Actix runtime found; starting in Actix runtime
      
      • Hm... What else... Did you modify the docker-compose.yml by chance? Are lemmy and pictrs sharing the same network? Other than that I'd be at a loss.

24 comments