Official deployment

Launch the Meshly community node on matrix.meshly.chat.

This is the homeserver Meshly already references in the community onboarding flow. Keep the website on meshly.chat, point matrix.meshly.chat at the VPS, and run the installer with open registration enabled.

Step 1. Point DNS

In Cloudflare, create matrix.meshly.chat as an A record to the VPS. Keep meshly.chat separate for the landing site.

Type: A
Name: matrix
IPv4: <your-vps-ip>
Proxy status: DNS only

Cloudflare only proxies a limited set of HTTPS ports by default, and 8448 is not one of them, so Matrix federation works best with the Matrix subdomain left unproxied.

Step 2. Run the installer

The script installs Docker, Synapse, PostgreSQL, and Caddy, then creates an admin account and leaves registration open so users can create accounts from Meshly.

curl -fsSL https://meshly.chat/install/meshly-node.sh | sudo bash -s -- \
  --domain matrix.meshly.chat \
  --email ops@meshly.chat \
  --admin-user admin \
  --open-registration true

If you omit --admin-password, the script prompts for it securely. If you want a fully non-interactive run, pass --admin-password and --yes.

Step 3. Verify the homeserver

curl https://matrix.meshly.chat/_matrix/client/versions
curl https://matrix.meshly.chat:8448/_matrix/federation/v1/version

The first command proves the Matrix client API is up for Meshly. The second confirms the federation port is reachable for other homeservers.

Step 4. Test the app flow

  • Open Meshly and choose Use Meshly community node.
  • Create a new account with a simple username and password.
  • Confirm the resulting Matrix ID uses :matrix.meshly.chat.
  • Create a room and verify messages sync across launches.
Next move

After the node is live, point the app docs at these pages and ship the onboarding links.