This guide uses Docker Compose to run Mailtrain with MongoDB and Redis backends.
mailtrain.example.com)mkdir -p /opt/mailtrain && cd /opt/mailtrain
Create docker-compose.yml:
services:
mailtrain:
image: mailtrain/mailtrain:latest
container_name: mailtrain
restart: unless-stopped
ports:
- "8080:8080"
environment:
- NODE_ENV=production
- MYSQL_HOST=db
- MYSQL_USER=mailtrain
- MYSQL_PASSWORD=ChangeMe123!
- MYSQL_DATABASE=mailtrain
- REDIS_HOST=redis
- MONGODB_HOST=mongodb
volumes:
- mailtrain_data:/opt/mailtrain/files
depends_on:
- db
- redis
- mongodb
db:
image: mariadb:10.11
container_name: mailtrain-db
restart: unless-stopped
environment:
- MYSQL_ROOT_PASSWORD=RootChangeMe123!
- MYSQL_DATABASE=mailtrain
- MYSQL_USER=mailtrain
- MYSQL_PASSWORD=ChangeMe123!
volumes:
- db_data:/var/lib/mysql
redis:
image: redis:7-alpine
container_name: mailtrain-redis
restart: unless-stopped
volumes:
- redis_data:/data
mongodb:
image: mongo:6
container_name: mailtrain-mongodb
restart: unless-stopped
volumes:
- mongodb_data:/data/db
volumes:
mailtrain_data:
db_data:
redis_data:
mongodb_data:
docker compose up -d
http://your-server:8080 in a browseradmin / testmailtrain/mailtrain on Docker Hubadmin / test (change immediately!)Any questions?
Feel free to contact us. Find all contact information on our contact page.