Quick Start
The fastest path from zero to a running SilentSuite server. Make sure you've met the requirements first.
1. Install
curl -fsSL https://raw.githubusercontent.com/silent-suite/silentsuite/main/self-host/install.sh | bashThe installer will:
- Check that Docker and Docker Compose are installed.
- Create a
silentsuite-server/directory in your current folder. - Download the Docker Compose configuration.
- Ask for your domain name (e.g.,
sync.example.com). - Generate strong random passwords for PostgreSQL.
- Write the
.envfile. - Pull Docker images and start the containers.
- Wait for health checks to pass.
The first user to sign up in the SilentSuite app becomes the server admin.
2. Set Up Your Reverse Proxy
The SilentSuite server listens on 127.0.0.1:3735. You need a reverse proxy to handle HTTPS and forward traffic to it.
Caddy (easiest -- automatic HTTPS):
sync.example.com {
reverse_proxy localhost:3735
}nginx:
server {
listen 443 ssl;
server_name sync.example.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
location / {
proxy_pass http://127.0.0.1:3735;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
client_max_body_size 50m;
}
}Cloudflare Tunnel (no open ports needed):
cloudflared tunnel --url http://localhost:3735Nginx Proxy Manager or other Docker-based proxies:
If your reverse proxy runs in Docker, connect it to the SilentSuite network:
docker network connect silentsuite-server_silentsuite <proxy_container>Then use silentsuite-server:3735 as the upstream instead of localhost:3735.
See the SELF-HOSTING.md in the repo for more reverse proxy examples (Traefik, security headers).
3. Verify
cd silentsuite-server
./verify.shBoth services should show [OK].
Then test from outside your server:
curl -s https://sync.example.com/ | head -5You should get a response from the Etebase server (not a connection error or TLS warning).
4. Connect Your Apps
- Open app.silentsuite.io or the SilentSuite mobile app.
- On the signup page, expand Advanced Settings.
- Enter
https://sync.example.com(your domain) as the server URL. - Create your account and start syncing -- you'll be the admin!
Your data is end-to-end encrypted. The server never sees your plaintext calendar entries, contacts, or tasks.
Next Steps
- Configuration -- understand and customize your environment variables.
- Admin Dashboard -- manage users via the web app admin panel.
- Backup & Restore -- set up automated backups.
- Updating -- keep your instance up to date.