Discourse - Modern discussion platform
Everything you need to deploy Discourse with BlastDock
One command deployment
Production-ready security
Customizable settings
Ready to scale up
blastdock init
Initialize new project
blastdock deploy
Deploy the application
blastdock status
Check deployment status
blastdock logs
View application logs
Get Discourse up and running in minutes with our one-click installation.
First, install BlastDock using pip (recommended):
pip install blastdock
Then deploy Discourse with:
blastdock init discourse
Interactive mode:
blastdock init discourse -i
blastdock templates
List available templates
blastdock status project
Check deployment status
blastdock logs project
View application logs
blastdock stop project
Stop deployment
Customize your Discourse installation with these configuration options.
Web interface port
Database password
Developer emails (comma separated)
SMTP address
SMTP port
SMTP username
SMTP password
Complete Docker Compose configuration for Discourse deployment.
version: '3.8'
services:
postgres:
image: postgres:13
container_name: {{ project_name }}_postgres
restart: unless-stopped
environment:
0: POSTGRES_PASSWORD={{ db_password }}
1: POSTGRES_USER=discourse
2: POSTGRES_DB=discourse
volumes:
- /var/lib/postgresql/data
networks:
- discourse_network
redis:
image: redis:6
container_name: {{ project_name }}_redis
restart: unless-stopped
networks:
- discourse_network
discourse:
image: bitnami/discourse:latest
container_name: {{ project_name }}_discourse
restart: unless-stopped
depends_on:
- postgres
- redis
ports:
- "3000"
environment:
0: POSTGRESQL_HOST=postgres
1: POSTGRESQL_PORT_NUMBER=5432
2: POSTGRESQL_USERNAME=discourse
3: POSTGRESQL_PASSWORD={{ db_password }}
4: POSTGRESQL_DATABASE=discourse
5: REDIS_HOST=redis
6: REDIS_PORT_NUMBER=6379
7: DISCOURSE_HOST=localhost
8: DISCOURSE_PORT_NUMBER={{ port }}
9: DISCOURSE_EXTERNAL_HTTP_PORT_NUMBER={{ port }}
10: DISCOURSE_EXTERNAL_HTTPS_PORT_NUMBER=443
11: DISCOURSE_DEVELOPER_EMAILS={{ developer_emails }}
12: DISCOURSE_SMTP_HOST={{ smtp_address }}
13: DISCOURSE_SMTP_PORT={{ smtp_port }}
14: DISCOURSE_SMTP_USER={{ smtp_username }}
15: DISCOURSE_SMTP_PASSWORD={{ smtp_password }}
16: DISCOURSE_SMTP_PROTOCOL=tls
volumes:
- /bitnami/discourse
networks:
- discourse_network
volumes:
postgres_data:
driver: local
discourse_data:
driver: local
networks:
discourse_network:
driver: bridge