How To Setup and Install Pleroma (Decentralised Social Media)
It's been a week since Trump got kicked of Twitter and Parler got kicked off AWS. Deplatforming has become a hot topic which has made some people question the future of social media. For most people this isn't a huge concern as they don't discuss controversial topics but like every other aspect in life it's good to look for alternatives that don't make you more reliant on giant corporations. The answer to most of the problems with social media is federated/ decentralised platforms that you can host yourself. Where you decide who gets to communicate with you and you don't have to worry about censorship. In a previous article I talked about Mastodon but in this article I'm going to show you how to setup a Pleroma instance. I believe Pleroma is a much better platform both in terms of preformance and their community.
Pleroma and other federated platforms are social media sites unlike any others. Instead of accessing a website running on some data centre owned by a giant tech company, Plerom is an open-source software project that anyone can use to create their own customizable instance. Each Pleroma instance can communicate with each other and the site owner determines what can and cannot be done on their instance.
The Technical Details
Normally Debian or Ubuntu is required for your server when running these kinds of applications. However, Pleroma even has guides for Gentoo, FreeBSD or Alpine if you really hate people who insist on calling it "gnu-linux". So it's very unlikely your server is running an OS that won't support Pleroma.
Before you start installing things you'll need to harden your SSH and set up fail2ban for security purposes. I previously wrote an article on how you can do that which can be found here.
Next you'll need to set up your DNS record for your domain. If you bought your domain with GoDaddy or any other domain registry then just point your record to your server IP address.
There is a documentation offered by Pleroma on how to set up everything using an OTP release that can be found here. The individual steps themselves are shown in the video above and combined with the steps in the documentation there shouldn't be any issues installing it on your server. I suggest you follow along with the video running the commands as some of them needed some additional steps not mentioned in the docs.
The services used by Pleroma in the background are Nginx, Postgress for the DB and certbot to obtain an SSL certificate for your domain. That's basically it, it's an fairly light-weight application all things considered and I've been able to run an instance on top of all the email and cloud services I have running on my VPS.
Unlike a typical social media site you'll be able to have a more close-knit experience and you'll have complete control over your data and who uses your instance. If you get stuck there are some additional explainations in the video above.
Stay happy and stay private.