This site is under development, so there may be little see for a while.
Greetings! As I have been setting-up dcerberus.com, I found a number of resources online to be invaluable, and so I am paying this forward by sharing my server build and configuration steps.
Take these as they are, and if you find something here useful then by all means copy it!
I only ever intend to operate a small Mastodon instance with under 100 accounts on it, so what follows here is intentionally optimized for cost and not for scale or performance.
This goal of being inexpensive, small, easily managable by one person in their spare time, and otherwise not trying to host the entire fediverse all on my own is both personally important, and philosophically-aligned with distributed hosting. The idea is that I can operate my own property the way that I believe it should be done, invite some of my friends to join me if they wish, and otherwise put my content online in a safe way.
I don't need ZuckerBot or Phony Stark owning my content forever
I operate this site on a single t3a.medium
EC2 instance with all of the required components deployed therein. This approach of not prematurely-optimizing is, I find, a critical component in successful operations, and I did not immediately jump to using RDS for PostgreSQL, nor do I have separate servers for Redis or an Elastic Load Balancer. I operate this single EC2 instance using an EC2 Savings Plan, which cuts my monthly compute spend in half. With the additional spend on S3 for object caching and user file storage, monthly bills are around ~$20.
Some of you may immediately say "but why not host on Kubernetes" or "but ECS rocks!" or "Digital Ocean is teh bomb!".
I said I want inexpensive and easy! And as I know AWS very well, this is the fastest path to success.
What I've done here is as simple as I can make it, while still being able to scale out and refactor in anyway I need to in the future.
Some sections require login to view. I have sanitized all that I can though
You can find me here at https://dcerberus.com/@rich. I hope you find something here useful!