This repository contains a self-hosted architecture to deploy a SimpleX SMP (messaging) and SimpleX XFTP (encrypted file transfer) server operating exclusively over the Tor (Onion v3) network.
The deployment is fully optimized to run without root privileges (rootless) and features a smart controller script that automates cryptographic key generation and environment self-healing.
- Operating System: Linux (Ubuntu / Debian recommended).
- Engine: Docker and Docker Compose installed.
Instead of interacting directly with docker compose, the entire stack is managed via the unified ./simplex script. This orchestrator handles:
- Environment Initialization: Automatically creates a clean
.envfile from.env.exampleif it is missing. - Native File Permissions: Secures all data directories by dynamically injecting your current host
UIDandGIDinto the containers, preventing ownership and permission conflicts. - Official Cryptography: Uses an ephemeral Tor container to generate genuine, network-compliant Onion v3 hidden service addresses natively, ensuring perfect compatibility with the Tor network.
- Validation & Self-Healing: If the
.envfile gets out of sync or its variables do not match the real keys stored on disk, the script usessedto automatically rewrite the configuration to reflect reality.
Make sure the main control script has the correct execution flags on your host machine:
chmod +x simplexSimply run the script without parameters. It will automatically validate your directories, generate your hidden service keys natively using the official Tor binary, configure the variables, and spin up the containers:
./simplexThe script acts as a transparent wrapper for Docker Compose. You can pass any standard compose command through it:
- Check container status:
./simplex ps - View real-time logs:
./simplex logs -f - Stop the node:
./simplex down - Restart the environment:
./simplex restart
Once the node has booted for the first time and generated its server cryptographic fingerprints, you can extract the exact invitation links ready to copy-paste into your SimpleX Chat app by running:
./simplex info(It also responds to the alias ./simplex urls)
This project relies on the following technologies and standards:
- SimpleX: The core messaging protocol and architecture for private, decentralized communication.
- SimpleX App: Official client repository.
- SimpleX Server: Official server (SMP/XFTP) implementation.
- Tor Project: The underlying anonymity network that enables hidden services, ensuring location privacy for the node.