Help standing up a self-hosted Lemmy instance

TerryMathews@lemmy.world to Selfhosted@lemmy.world – 9 points –

I'm trying to stand up a Lemmy instance, and for some reason I'm just not getting it. I've got a fair bit of experience in Linux and Docker. NPM is new to me, but doesn't seem difficult.

I've looked over several walkthroughs but it seems like they all don't quite work right. Does someone have a clear step-by-step that works, or could take the time to remote in and help me get this up?

I'm running on VMWare ESXi, and I've tried both Debian and Ubuntu to get the server up. Closest I got, the Docker containers would start but seem to be throwing errors internally and don't connect to one another.

23

You are viewing a single comment

So I wanted to make a top-level post: I've got a set of example files, and instructions, that will work 100% of the time on Debian. What do you guys think would be the best way to share them? A post here and the files shared on Google Drive? GitHub? Definitely open to suggestions, but I don't want anyone to struggle with it as hard as I have.

oh man. super valuable. I would love to have that, as setting up Lemmy on Debian 12 is in my near future.

Here we go:

Example files

Any place you see <something>, you need to change it to fit and omit the <>. If something <matches> in two differet places <matches> like this, make sure they match when you're done as well. Specifically, the postgres user and password in the lemmy docker file and the lemmy.hjson.

Finally, in Google drive the files end in .txt so you can view them. You'll need to correct the file names when you download them if you intend to use them. You should have two docker-compose.yml, one in each of the two directories you create, and one lemmy.hjson.

From a fresh CLI Debian 11 install:

su
/sbin/usermod -aG sudo <user>
groups <user>
apt-get install sudo
cd /opt
mkdir npm
cd npm
(copy or create docker-compose.yml)
apt-get install docker-compose
docker-compose up -d
cd /opt
mkdir lemmy
cd lemmy
(copy or create docker-compose.yml and lemmy.hjson)
mkdir -p volumes/pictrs
chown -R 991:991 volumes/pictrs
docker-compose up -d
docker ps (verify containers are all running, grab ip address for lemmy container)
Configure port forwarding in npm for your lemmy container (npm should be accessible at debian_ip_address:81)
Remember to do the custom paths from the various guides. The lemmy port in this guide is 1234.

Please note I am not addressing federation or SSL or true hosting yet. I haven't got that far yet. But if you can get the damn thing running, the last mile shouldn't be too bad.

Thank you! This is helpful.

I will probably be installing it bare metal atop Debian (no Docker), but this is still quite useful.

BTW I think if you indent your list of commands by 4 spaces, it will render better:

su
/sbin/usermod -aG sudo <user>
groups <user>
apt-get install sudo
cd /opt
mkdir npm
cd npm
(copy or create docker-compose.yml)
apt-get install docker-compose
docker-compose up -d
cd /opt
mkdir lemmy
cd lemmy
(copy or create docker-compose.yml and lemmy.hjson)
mkdir -p volumes/pictrs
chown -R 991:991 volumes/pictrs
docker-compose up -d
docker ps (verify containers are all running, grab ip address for lemmy container)