I am not sure how to self-host docker compose environments. Maybe somebody can help out.
I’m a software dev and not afraid of some sysadmin work.
Options I see:
- I see a docker-compose community app that lets you start setting things up, but haven’t investigated very much.
- Spin up a linux vm, pretend its not unraid and follow instructions. This is heavier-weight so I want to investigate the docker approach at least some.
- Individual dockers, sorta extracting each item in the docker-compose file and running them one-by-one.
I already have nginx proxy manager setup with other services, so that should be fine to expose things to the wider internet when I get that far.
We are :P
Tiff wrote a post here on self hosting it: https://reddthat.com/post/19103
Also nearly everyone is using docker for Lemmy and as long as unraid lets you run docker commands you should be fine.
Docker compose is (now) part of docker. It’s a way to describe all the containers you want, and then docker goes and does it. You should 100% learn docker compose, and Lemmy already has a compose file in their repo. So you should be able to copy paste and say
docker compose up -d
Hows the CPU+memory+network load running an instance your size?
I write about that here: https://reddthat.com/comment/66766 and allude to our problems in the future funding post here: https://reddthat.com/post/25633
But it’s only a 2 core, 4gb ram, and I think a 100mbit line, though I have yet to test the network throughput to its maximum.
We average about checks 15-25% CPU usage at the moment over the past 24 hours.
We are using Cloudflare Infront of our server to help with spikes, but honestly it doesn’t do much except for serving the images.
This is due to the fact that lemmyui interacts via websockets and all federation are pretty much POSTs.Lemmy itself is very CPU and memory efficient. The biggest problems all other instances are having are database related and the inefficient nature that some of the queries are.
In the long run, I would like to get a dedicated colo instance for the database server, which would give us enough growing room for up to 10k+ users even with the current database inefficiencies, but until we get about $200-250 per month in recurring monthly donations there will no way we can get to that.
Nope. Waiting for an Unraid plugin :D
My first thought is #3. It kinda sucks but unless you spend the effort to find an appropriate lightweight VM (which has to exist, right?) and want to set up backups/ansible/etc you might have to do the legwork.
Yeah, makes sense. I already run VMs for other things (Home Assistant and a general programming env one), just boring ubuntu ones though.
I have an unnecessarily beefy system (12core + 64gb of ram), so I guess the overhead isn’t bad, just the need to maintain yet another OS.
I was able to get it running using the docker-compose CA app and the official docker-compose file after some tweaking. I’m running a similar nginx reverse proxy setup and no issues with federation.
I ended posting my docker-compose file in another thread, thought I should link it here: https://mimiclem.me/comment/10555
Could you share your compose and nginx conf? I’ve tried setting it up but no idea how to use compose
Sorry, for some reason I didn’t see your comment. Ibracorp has a pretty good review of the compose plugin. My docker-compose file. I’ll have to sanitize my nginx file before posting. I’ll try to get to it tonight.
I got it going on a DigitalOcean VPS… I thought about hosting it on my Unraid machine, but at the end of the day I wasn’t very comfortable hosting a VERY public place on my home server.
That said, having gone through the setup, I’m sure you could get it going on Unraid. I would use Docker Compose via the Compose Manager plugin, along with SWAG or NPM.
There are some differences in how you use Docker Compose on Unraid vs on a VM, but nothing insurmountable! If you give it a shot, let us know how it goes!