Self-Host with Docker Compose
This section outlines the necessary steps to run Dittofeed with docker compose.
First, clone Dittofeed’s github repository.
git clone [email protected]:dittofeed/dittofeed.git
cd dittofeed
Next create a local .env
file.
touch .env
Dittofeed has dependencies on Postgres, and Clickhouse, with an optional Kafka dependency.
Populate this .env
file with the following values, substituting placeholder values with your own. Dittofeed will work without these overrides, but it is recommended that you substitute your own credentials.
# used to generate links to the dashboard e.g. for unsubscribe links. should not
# include the /dashboard suffix
DASHBOARD_URL="https://my-dittofeed-dashboard.com"
# used to issue requests to the api from the dashboard. should include the /api
# suffix.
DASHBOARD_API_BASE="https://my-dittofeed-api.com/api"
DATABASE_USER=my-postgres-user
DATABASE_PASSWORD=my-postgres-password
CLICKHOUSE_USER=my-clickhouse-user
CLICKHOUSE_PASSWORD=my-clickhouse-password
Finally, start Dittofeed’s services, and run Dittofeed’s bootstrap script.
docker compose -f docker-compose.prod.yaml up -d
Then once the above services have successfully started.
./scripts/admin.sh bootstrap --workspace-name='My Company'
The above command will start Postgres and Clickhouse. You
may decide to use a third party vendor for these data stores. In that case,
you should disable the corresponding services in the
docker-compose.prod.yaml
file.
Self-Host with AWS Cloudformation
Deploy Dittofeed to AWS with docker compose and Cloudformation. Coming Soon