this post was submitted on 11 Aug 2026
131 points (97.8% liked)

Selfhosted

61335 readers
512 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:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

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

Questions? DM the mods!

founded 3 years ago
MODERATORS
 

Of the many useful things I could do with my spare time instead I'm setting up a Lemmy instance because why not. The scope of this is definitely greater than any self-hosting I've ever attempted, so please feel free to tell me just how much trouble I'm in. I'm just giving the broad strokes to see if I've made any crucial errors (other than deciding to do this at all).

And if this is a completely wrong place for a post like this or I'm missing data I'm supposed to include I apologize, I probably need a sanity check, in more ways than one.

First limitation, I'll be hosting it on an existing Linux Mint box acting as a file share mostly and occasional gaming PC/movie streaming box. Its hardware is overkill for this, I do not anticipate issues when it is in use. It receives regular updates and weekly reboots, instance will be set to automatically restart. NVMe with loads of space for local storage, RAID SSDs for data offload/backup.

Second limitation, I hate Cloudfare and Oracle. I do not want to use either of them.

Third limitation, money. Cheaper is better. I have a URL picked out and a registrar which will give me the cheapest long term option, in case I actually keep this thing going.

Last limitation, I'm already in over my head so I'll be relying on a lot of googling and probably some chat bots to figure things out as I go through the actual deployment process. What could go wrong?

So, Lemmy hosted on Linux Mint box using Docker containers. ISP is a good one for this I'm told, no CGNAT, largely stable public IP but I'll have a script running in case it does change. Confirmed ports 80/443 are open. Using Caddy for the HTTPS. Closed registration to start, if by some miracle I make it to actually wanting to allow additional users it will not be fully open, and I'll use Brevo for the email SMTP. Security wise I know I'm making it harder for myself by exposing my IP, I'm going to have UFW running and Crowdsec to help keep incoming bad traffic out.

Down the line I'll get Lemmy updates, backups, retention rules in place/automated, and make decisions on federation, etc. Thoughts?

you are viewing a single comment's thread
view the rest of the comments
[–] BuckFutter@timeyak.com 5 points 1 day ago (2 children)

Best of luck to you!!! I just went through this last week and wow it was a challenge. I went the docker route not using ansible…and yah by far the worst install I ever went through of all the self-hosting projects I have setup…but my setup was largely complicated by the fact I had an Apache reverse proxy setup in front of the nginx proxy that has an example config provided…finally figured it all out, but yah fun times 😂 happy to help if you get stuck.

[–] tko@tkohhh.social 3 points 1 day ago (1 children)

Not sure what your solution was, but I eliminated the reverse proxy from the official compose stack and configured my existing reverse proxy to point directly at the lemmy containers. It works well for me.

[–] BuckFutter@timeyak.com 2 points 1 day ago (1 children)

Thanks. Yah that was what I tried to accomplish using Apache but couldn’t get the correct proxypass statements in Apache that would do the correct passing depending on the header received. Tried asking an LLM for help but never got it to work, so ended up doing a basic/straight pass through apache to a local VM running nginx as an outer proxy which proxy’s to the nginx internal proxy…its messy as all hell but it works 🤷

[–] tko@tkohhh.social 3 points 1 day ago (1 children)

I don't know enough about Apache to say one way or the other, but based on what you described, you SHOULD be able to get rid of the internal proxy. Since both the inner and outer are both NGINX, getting the settings right shouldn't be a problem.

But, on the other hand, if it works it works!

[–] BuckFutter@timeyak.com 2 points 1 day ago

Good call. Perhaps on a rainy day I’ll take another crack at it…but yah the ports are exposed through docker so yah, makes sense. Thanks and have a great day!

[–] AngryishHumanoid@lemmy.world 2 points 1 day ago (1 children)

One of my earlier deployment plans had me using Ansible, then a bot aided revision had me remove it since I'm doing a single machine install and a fairly straightforward process. From my understanding I'll get a better learning experience not using it so I figured that was better.

[–] BuckFutter@timeyak.com 2 points 1 day ago

Yah i had never used it either, alot of the tutorials I found suggested it, and what threw me for a loop and was the ultimate Aha! moment for me was there is an ansible version and a non ansible version for the docker configs with different options in each, and the ultimate key thing I overlooked is on github, I kept using the “main” development branch which had changes that didn’t work with the stable .19 version. Switching to the .19 branch on GitHub and referencing those configs made it all click