Discourse is an open-source community discussion platform that merges traditional forums, mailing-list workflows, and real-time conversations into a mobile-first interface. This guide deploys Discourse on Ubuntu 24.04 using the official installer, which handles Docker setup, configuration generation, and automatic Let's Encrypt HTTPS. By the end, you'll have a Discourse forum running securely at your domain with the community dashboard ready.
Prerequisite: A Discourse ID account at id.discourse.com. Custom domain or a free
discourse.diysubdomain works.
Claim a Free Subdomain (Optional)
If you don't have a custom domain:
- Visit
https://id.discourse.com/my/subdomain. - Sign in with your Discourse ID account.
- Pick a unique subdomain (e.g.
mydiscourse.discourse.diy). - Click Claim Subdomain.
- Generate the verification code (expires in 10 minutes — keep it ready).
Run the Discourse Installer
Warning: Run installer scripts only from trusted sources. The Discourse installer runs as root and modifies Docker, firewall rules, and TLS settings.
1. Create the project directory:
$ mkdir discourse
$ cd discourse
2. Download and execute the installer:
$ wget -qO- https://raw.githubusercontent.com/discourse/discourse_docker/main/install-discourse | sudo bash
The script installs Docker, generates configuration, enables Let's Encrypt, and launches the setup wizard.
Configure the Deployment
The interactive wizard prompts for:
- Admin email — your Discourse ID account email.
-
Domain selection —
Noto use adiscourse.diysubdomain (enter the verification code);Yesfor a custom domain already pointing at the server. -
SMTP configuration —
Noto defer until later;Yesto configure SMTP now.
After reviewing the settings, select Yes to deploy. The first build can take a few minutes.
Verify the container is running:
$ docker ps
Look for a container named app using the local_discourse/app image with ports 80 and 443 mapped.
Access the Discourse Dashboard
1. Open the site over HTTPS:
https://discourse.example.com
2. Sign in with **Login with Discourse ID.**
3. Complete the Getting Started wizard:
- Community name — forum title.
- Language — primary interface language.
- Visibility — public (searchable) or private (login required).
- Registration — open sign-up or invite only.
- Account approval — toggle moderator review for new users.
4. Create a starter category and publish an introduction topic from the New Topic button.
Next Steps
Discourse is running with HTTPS at your domain. From here you can:
- Configure SMTP under Admin → Email for transactional and digest emails
- Install themes and plugins from the official marketplace
- Enable single sign-on (Discourse Connect, SAML, OAuth) to bridge your existing user base
For the full guide with additional tips, visit the original article on Vultr Docs.
Top comments (0)