this post was submitted on 29 Aug 2023
113 points (97.5% liked)

Selfhosted

37722 readers
438 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

Hi all. Due to the news of the illegal images being hosted on lemmy, I shut down my instance. I read some comments from people stating that they were able to selfhost lemmy without pictrs, they just can't upload or cache photos. I think this is what I am interested in doing at this time.

I tried commenting out the pictrs section of my docker-compose.yml and removed the "depends on pictrs" sections. However, I get the error message in the attached screenshot when I go to my page.

Does anyone have any info on how to selfhost lemmy with image hosting completely disabled?

top 32 comments
sorted by: hot top controversial new old
[–] [email protected] 45 points 10 months ago* (last edited 10 months ago) (2 children)
[–] [email protected] 14 points 10 months ago (1 children)

Awesome! Thank you for this link!

[–] [email protected] 12 points 10 months ago (1 children)

Just a note that my PR there doesn't disable pictrs for your own instance's users. It just disables the caching of remote content.

[–] [email protected] 16 points 10 months ago (1 children)

That's fine with me, as I'm the only user in my instance.

Though I do still think this is a huge miss on pictrs to not allow the admin to browse the photos stored on their own server. I mean, someone could upload an illegal photo, not post it, then send the URL that only they could possibly know to whichever relevant government agency anonymously and potentially ruin the life of the admin.

Thank you so much for contributing and making this much needed fix.

[–] [email protected] 7 points 10 months ago (1 children)
[–] [email protected] 5 points 10 months ago

This is a good start, but I think there also needs to be a way to browse all the images stored and shred them.

[–] d_ohlin 3 points 10 months ago

Great! This is awesome thank you so much!!

[–] [email protected] 42 points 10 months ago (1 children)

Pictrs should have been an optional microservice by default. Commenting here to keep track of this thread since this is useful.

[–] [email protected] 22 points 10 months ago (3 children)

I agree! Or let us disable caching images from other instances. I'm not interested at all in rehosting images that other users on other instances upload. That's too much of a legal liability to me.

[–] [email protected] 10 points 10 months ago

Same thinking here. Caching media pretty directly undermines any Safe Harbor protections you have running a site, not to mention the resource overhead required.

[–] [email protected] 7 points 10 months ago (1 children)

I don’t understand why lemmy caches photos in the first place? Like surely it’s quicker, easier, and lower bandwidth to just store a url to the original source.

[–] [email protected] 11 points 10 months ago (1 children)

Lower bandwidth for who? When images are cached on other instances, it allows two things:

  • Load sharing. The original instance doesn't have to serve the whole fediverse, but only its own users + 1 request per other lemmy instance.
  • Data availability through redundancy. If the original instance goes down, the cached image is still viewable on other instances.
[–] [email protected] 2 points 10 months ago

Bandwidth was the wrong choice of words. Storage space is more what I meant.

[–] [email protected] 3 points 10 months ago* (last edited 10 months ago)

My primary consideration is all the expensive storage filled up by vapid image macros. 80 GB goes a long way for just text.

[–] [email protected] 26 points 10 months ago (1 children)

For now, you can just route /pictrs/ path to 404 so nginx won't serve any image from pictrs:

location ^~ /pictrs/ {
    return 404;
}
[–] [email protected] 3 points 10 months ago

Yes! This worked! Thank you!

[–] [email protected] 16 points 10 months ago (1 children)

Wants to remove pictures from his own Lemmy, asks for help with that via picture on Lemmy

[–] [email protected] 7 points 10 months ago

I actually thought of that. And it's even hosted on sh.itjust.works via pictrs.

[–] lung 14 points 10 months ago (2 children)

Yeah it's been obvious and foreseeable that normal admins won't have the bandwidth to handle takedown requests and cp spam attacks. Sadly the only stable state I see for the fediverse is relying on centralized content hosts that can handle those problems. Well, maybe until AI can do it

[–] [email protected] 3 points 10 months ago (1 children)

Wouldn't you only really need one(or a few) instance that could do the work and flag things for everyone?

[–] [email protected] 1 points 10 months ago

Yeah I've envisioned sharable block lists that you can subscribe to similar to pihole. That'd be great

[–] [email protected] 3 points 10 months ago

It sucks there's no way to make use of the current csam blocklists except possibly if you're a big enough instance since you can't get access without approval. Instances going through cloudflare that use the cloudflare caching can use it through them but it only works on images it's serving so wouldn't block them being uploaded, just served to other instances.

[–] [email protected] 9 points 10 months ago* (last edited 10 months ago) (1 children)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
DNS Domain Name Service/System
HTTP Hypertext Transfer Protocol, the Web
PiHole Network-wide ad-blocker (DNS sinkhole)
SSD Solid State Drive mass storage
nginx Popular HTTP server

3 acronyms in this thread; the most compressed thread commented on today has 5 acronyms.

[Thread #91 for this sub, first seen 29th Aug 2023, 23:55] [FAQ] [Full list] [Contact] [Source code]

[–] [email protected] 3 points 10 months ago
[–] [email protected] 2 points 10 months ago (1 children)

You could just set the upload limit to 1kb?

[–] [email protected] 8 points 10 months ago (1 children)

The caching is probably the problem, not the uploads on a personal lemmy instance.

[–] [email protected] 6 points 10 months ago (1 children)

I wrote a patch for Lemmy a week or so ago if you want to skip the caching: https://github.com/LemmyNet/lemmy/pull/3897

[–] [email protected] 4 points 10 months ago

I hope this gets merged soon. Saves us on storage space and makes monitoring media uploads easier.

[–] [email protected] 2 points 10 months ago (1 children)

I wonder if you instead of disabling Pictrs you could just block image uploads to your Lemmy site, or maybe use a PiHole or Adguard on your network to block them.

[–] [email protected] 1 points 10 months ago (1 children)

But then I wouldn't be able to see photos on my instance. I want to see them, I just don't want the federated cache being saved on my SSD.

[–] [email protected] 4 points 10 months ago

Hmmm... I do not have Pictrs because I am using the Yunohost Lemmy package, so there are no images on my instance, but I can still see images while logged into my instance.

[–] [email protected] 0 points 10 months ago* (last edited 10 months ago)

Have you tried checking the logs of the lemmy container?