Self-hosted edition
Run Customer360 on your own server with Docker, licensed by an offline key.
5 min readFor Admins
The self-hosted edition is the same product running on your own infrastructure: your data never leaves your servers. It needs a Linux server with Docker (2 vCPU and 4 GB RAM is enough for most sites), a domain name pointing to it and an SMTP account for emails.
- 1Copy
docker/selfhosted.env.exampleto.envand fill it in:APP_URL,DOMAIN,MONGO_PASSWORD, the three crypto keys,PRODUCT_ADMIN_EMAILS, SMTP and yourELEXY_LICENSE_KEY. - 2Run
docker compose --profile tls up -d --build. This starts the app, MongoDB (with authentication, not reachable from outside) and Caddy, which gets an HTTPS certificate automatically. - 3Open your
APP_URL, sign up with an email fromPRODUCT_ADMIN_EMAILSand create your organization. - 4Install the tracking script on your websites as usual.
openssl rand -base64 32 # DATA_ENCRYPTION_KEY, BLIND_INDEX_KEY, IP_HASH_SALT_SEED openssl rand -hex 24 # MONGO_PASSWORD
Licence key
- Eleserv Softech issues a signed key (trial or paid). It is checked on your server: no connection to Eleserv is needed.
- The key sets your plan limits, the number of organizations and the expiry date. The Billing page shows the licence status.
- Without a valid key, or after it expires, dashboards stay readable but tracking pauses. Put the renewal key in
.envand rundocker compose up -d.
Upgrades and backups
- Upgrade: fetch the new release, then
docker compose up -d --build. Database changes are applied automatically on start. - Back up the MongoDB data (for example a nightly
mongodump) and your.envfile. Encrypted fields can't be read without the original crypto keys.
Good to know: Never change DATA_ENCRYPTION_KEY or BLIND_INDEX_KEY after the first start: encrypted emails and phone numbers would become unreadable.