Welcome to your one-stop guide to deploying a Matrix server using this repository! Let's get you up and running with the power of Coolify and a sprinkle of Docker magic. 🐳✨
- Coolify: For easy self-hosting and app management (makes your life way simpler!)
- A Keen Spirit: Get ready to embark on a tech a 7761 dventure! 🎒🧑💻
Get started by installing Coolify on your server. For instructions, visit Coolify Self-Hosted.
- In Coolify, navigate to Projects and select Create New Project.
- Within your new project, add a resource and select Keycloak with Postgres.
- Customize your service name, admin user, admin password, and database to suit your preferences. 🎨
- Deploy and wait for the magic to happen. 🧙♂️✨
- Open the URL of your freshly deployed Keycloak instance.
- Log in with your admin credentials.
- Create a new realm, give it a unique name, and you're set! ✨
- Return to Coolify and enter your project.
- Add a new resource from this GitHub repository (or your fork).
- Set Build Type to "Docker Compose", leave defaults, and click Continue.
- Customize the build command to:
🔧 This script prepares the required configuration files from your
chmod +x ./scripts/run.sh && ./scripts/run.sh && docker compose -f ./docker-compose.yml build
.env
and keeps configurations updated during deployments.
Define the domain mappings for your Matrix server components:
- Synapse:
synapse.matrix.your-domain.com
(Port: 8008) - Sliding Sync Server:
sync.matrix.your-domain.com
(Port: 8009) - MAS:
mas.synapse.your-domain.com
(Port: 8080) - Nginx (Main Entry):
matrix.your-domain.com
(Port: 80)
📝 Tip: Ensure nginx is the primary entry point for clients.
- In Coolify, navigate to Environment Variables.
- Enable Developer View and paste in your
.env.example
content. - Adjust variables as needed (refer to comments for guidance).
- Save your changes and switch back to Normal View for future variable tweaks.
- Hit Deploy and watch everything come to life.
- Once successful, access your Matrix server at your designated domain. Test Synapse with the message: "It works! Synapse is running."
🔗 Connect clients to your Matrix server using the nginx-mapped domain: matrix.your-domain.com
.
Enjoy your newly deployed Matrix server! 🎊 If you encounter any hiccups, remember: tech adventures always include a bit of troubleshooting magic! 🧙♀️💻