Self-hosting
Notifyzr is designed to be self-hosted. The whole platform runs through Docker Compose behind a single Traefik reverse proxy.
Requirements
- Docker with Compose
justfor the task runner- A domain, if you are running anything other than local development
Getting up
bash
cp .env.example .env
just up # start everything
just migrate # apply migrationsThen register an account at app.<DOMAIN> and create an API key. There is no development seed — the first account you register is a real one.
Everyday commands
bash
just up # start
just down # stop
just rebuild # rebuild images and restart
just logs # tail api / worker / rabbitmq
just shell api # shell into a service container
just migrate # apply migrations
just test # PHP test suites
just lint # PSR-12 across every PHP packageInstance modes
APP_MODE decides how plans behave:
| Mode | Behaviour |
|---|---|
selfhosted (default) | Every organization is on the unlimited plan. Quotas do not throttle. |
hosted | Organizations start on freemium and choose a plan. Quotas and retention apply. |
Next: Configuration and Services.