This page documents the Discourse service used for our community forums at fossrit.community. Discourse is where anyone may share topics for discussion with the wider FOSS@RIT community.
The current deployment is made up of a single DigitalOcean droplet,
This host runs:
- Discourse Docker image
This host relies on:
- SendGrid API key (for outgoing mail, eventually incoming)
Our Discourse site was deployed exactly as described in upstream’s documentation:
We do not use config files to maintain Discourse. The config settings are dynamic and stored inside the image container. If a rollback is needed, see Backups.
If you self-host Discourse, you occasionally need to run a manual update via the command line to get the latest security releases newest libraries. These updates are not picked up in admin/upgrade, which is why you’ll occasionally need to do this additional step.
- Discourse itself should be updated about twice a month, by clicking the “Update to Latest Version” button in your admin dashboard (
admin/upgrade). We do beta releases roughly once every week.
- Every two months we recommend SSH’ing into your web server and doing
cd /var/discourse git pull ./launcher rebuild app
- As for Ubuntu updates, make sure you have automatic security updates enabled for your Ubuntu! The command is:
dpkg-reconfigure -plow unattended-upgrades
However, that just covers critical security updates. Every so often you should get all the OS updates like so:
apt-get update apt-get dist-upgrade
- update Discourse twice a month via web updater
- update the container every two months
- update the OS every six months
You could double these numbers and still be fairly safe, e.g. update Discourse once a month, container every 4 months, OS once every 12 months, and so on.
But you really, really want automatic security updates enabled in Ubuntu, as listed above – all our Digital Ocean “one-time installs” already have automatic security updates set up.
Two types of backups are made of the Discourse site:
The Discourse site takes a weekly backup of site content, usually between 00:00–01:00 on Thursdays. These backups are available from the admin panel:
These backups can be used for rollbacks, triggered by admin users.
Snapshots are currently enabled via DigitalOcean ($2/month). They are scheduled to start weekly Friday 3 PM to Saturday 2 PM (EST). Snapshots can be accessed via the DigitalOcean droplet settings.