Requirements for deployment
- DNS provider
choose discourse url (for this example we will use
- SMTP transactional email provider
you will get credentials for
smtp sever url,
- Digital Ocean Account
great low cost deployment option and what the tutorial is centered around
- Admin Email Address
whatever email address you want the default discourse admin to be. I highly recommend using an email alias or email group (prefer later) – since you don't want your service to depend on a single person's email!
- command line experience
some familiarity with the command line is required (but not ssh)
Login to DigitalOcean Login (you may already be logged in)
Click the "Create Discourse Droplet"
Choose a Droplet Size
1 CPU and 2 GB is plenty for discourse. 1 GB of RAM is not enough for discourse upgrades.
Choose a Droplet Location
For droplet location choose the closest location to your users.
Select Droplet Access Method
You are given the option for password or ssh based access. It is highly recommended to use ssh. If you use password based access make sure it is a long password.
Label and Name Resources
When deploying resources in the cloud it is especially important to name and label resources. Typical tags to include are creation date, project, development, production. More is better.
Finally Click "Create Droplet"
Identify the IP Address of the Resulting Droplet
In the case of this example the IP address is
Point DNS A record at Droplet
Using the DNS Provider that you have chosen with a controlled
domain. Point an
A record at the IP Address. Every provider will
have support for this type of record. In the figure below we show
setting the DNS name via cloudflare.
Use Console to Login to Droplet
If you have configured ssh key access you will have to use ssh to
connect with your public/private key pair. If you chose a master
password option you may use the console button to login with username
root with master password that you specified when creating the
Answer Discourse Installation Prompt
url that discourse site is accessiable from
discuss.aves.iofor this example
- admin email address
email address that discourse uses for inital login
- transactional email settings
smtp address, smtp port, smtp login, smtp password
Installation should take around 5 minutes and you should be able to visit your discourse server and do administrative setup and discourse customization.
Administrative Discourse Setup
Visit Discourse Website
The first time you visit your discourse site you will see the following landing page. This page will continue to persist until an administrator has successfully logged into the site.
Once you click register you will need to register the username associated with the admin email setup previously in configuring discourse. Note that this is the master password so keep it secure.
Click Activation Link with Admin Email
Once you have entered your username and password you will recieve an email at your admin email address similar to the figure below.
Welcome to Discourse and the Customization of Discourse Begins
Discourse is extremely customizable thus this tutorial cannot go into depth on discourse and we suggest the reading discourse's discourse site. These initial settings will adjust the look and feel of your site to make it feel personal to your audience.
Discourse has two forms of backups tarball backups and s3 backups. We highly recommend s3 backups since they are more cost effective and provide stronger data guarantees. Each backup is between 70-100 MB and frequency and number of backups stored is all configurable. Thus it is possible to backup for nearly free. Further instructions on discourse backup.
Discourse upgrades can be done through the web UI. Go to the admin settings dashboard and click "Perform upgrades here". If you have upgrades available click the upgrade buttom. Note that each upgrade will lead to 1-2 minutes of downtime for the website. In this demo's case the website is up to date. Remember to update frequently. You will receive an email about once a month about available upgrades.