Altoros is a big data and Platform-as-a-Service specialist that provides system integration for IaaS/cloud providers, software companies, and information-driven enterprises. Areas of expertise include Cloud Foundry, Hadoop, and NoSQL solutions, as well as Microsoft .NET, Java, Ruby on Rails, and mobile technologies.Written by altoros
Discourse is the 100% open source, next-generation discussion platform built for the next decade of the Internet.
Juju is a service orchestration management tool developed by Canonical. This guide requires configured and successfully bootstrapped Juju environment. Please walk through getting started with Juju guide if you are not familiar with Juju yet.
First you have to fork Discourse and prepare it for deployment with Juju
Add Redis config
Copy config/environments/production.rb.sample to config/environments/production.rb
Add new files to git:
Update your repository:
Now discourse is ready for the deployment with JuJu.
Create Rack charm config:
Important: Discourse requires SECRET_TOKEN to be defined for sessions storage.
More configuration and deployment options available on Rack charm page.
Deploy Discourse with Rack charm:
Deploy and relate Redis:
Deploy and relate PostgreSQL
Generally you should use db relation for postgresql but Discourse creates hstore extension in migrations that’s why you have to use db-admin instead.
Finally expose the Discourse:
Use juju status or juju debug-log to watch for deployment progress.
When discourse is deployed create, migrate and seed database:
Navigate to discourse and create your account. When you are done promote your account to admin in the Rails console:
Now you can configure discourse from /admin console. More info on the The Discourse Admin Quick Start Guide page.