Installation
Notifications Center uses PostgreSQL as database to store information.
First, you need to install any instance of PostgreSQL server. It can be either docker container or dedicated installation. For example, this command installs PostgreSQL from official docker image:
docker run \
-v /custom/mount:/var/lib/postgresql/data \
-e POSTGRES_PASSWORD=mysecretpassword
-d postgres
Notifications Center relies on Queue, Feed, SMS and Email images. Refer to their installation chapters.
Tie all together with Docker Compose:
version: '2.2'
services:
postgres:
image: postgres
environment:
POSTGRES_PASSWORD: mysecretpassword
volumes:
- /custom/mount:/var/lib/postgresql/data
notify:
image: images.perfumerlabs.com/dist/notify:v1.0.0
environment:
PG_HOST: postgres
PG_REAL_HOST: postgres
PG_PORT: 5432
PG_DATABASE: notify
PG_USER: postgres
PG_PASSWORD: mysecretpassword
depends_on:
postgres:
condition: service_started
feed:
image: images.perfumerlabs.com/dist/feed:v2.0.0
environment:
PG_HOST: postgres
PG_REAL_HOST: postgres
PG_PORT: 5432
PG_DATABASE: feed
PG_USER: postgres
PG_PASSWORD: mysecretpassword
depends_on:
postgres:
condition: service_started
sms:
image: images.perfumerlabs.com/dist/sms:v2.1.0
environment:
PG_HOST: postgres
PG_REAL_HOST: postgres
PG_PORT: 5432
PG_DATABASE: sms
PG_USER: postgres
PG_PASSWORD: mysecretpassword
# example with smsc.ru provider credentials
SMS_PROVIDER: smscru
SMSCRU_SENDER: sender # your smscru account sender name (specified in their cabinet)
SMSCRU_USERNAME: smscru_username # your smscru account username
SMSCRU_PASSWORD: smscru_password # your smscru account password
depends_on:
postgres:
condition: service_started
email:
image: images.perfumerlabs.com/dist/email:v1.3.0
environment:
# example of sendpulse.com credentials
EMAIL_FROM: noreply@your-domain.com
SMTP_HOST: smtp-pulse.com
SMTP_PORT: 465
SMTP_USERNAME: sendpulse-account
SMTP_PASSWORD: sendpulse-password
SMTP_ENCRYPTION: ssl
queue:
image: images.perfumerlabs.com/dist/queue:v1.4.2
environment:
# set more workers if needed
QUEUE_WORKERS: "{\"sms\":1,\"email\":1,\"feed\":1}"
volumes:
- tarantool:/var/lib/tarantool
Note, that Notifications Center relies on services sms
, email
, queue
and feed
to have these names. If you want to customize them, refer to configuration page for parameters description.