🗒️Self-Host Matrix (I) - Deploying Dendrite Homeserver with Docker

AI summary

😀 Intro

My old domain, mykeyvans.space, is up for renewal soon, but the renewal price has been increasing year after year, becoming prohibitively expensive. Therefore, I decided to activate the new domain mykeyvans.com.
Previously, I was using Synapse as my Matrix server, along with various bridges to consolidate messages from other chat applications like WhatsApp and Instagram. However, Synapse is a comprehensive platform, offering more features than I need for personal use. Its resource consumption is also quite high. Moreover, I am now primarily using Beeper to receive messages from most of my chat applications, making the need for self-hosted bridges less essential.
Given the domain's discontinuation and the need for a streamlined architecture, I have chosen Dendrite as the foundation for rebuilding my Matrix server. I will be documenting the entire setup process for future reference.
In subsequent posts, I will cover the use of Amazon S3 / CloudFlare R2 as media sources, enabling the latest features, importing a rich collection of Telegram emojis, and exploring backup and migration strategies. Stay tuned!

📙 My Philosophy of Self-host

  • Embrace Docker: Minimize system modifications, break free from architectural constraints, facilitate backups, streamline management, and enable seamless migrations.
  • Component Minimalism: Focus on essential server-side components, forgoing client-side deployments. Utilize official web/client applications for user interaction.
  • Non-Invasive Approach: Minimize changes to existing services, ensuring the uninterrupted operation of other applications.

💼 Getting Started

  • Cloudflare Domain Setup:
    • You'll need a domain and a subdomain hosted on Cloudflare. These domains need to be properly resolved and have CDN enabled.