In this tutorial, we will show you how to install Discourse on Debian 11. For those of you who didn’t know, Discourse is an open-source Internet forum (aka online message board). It is designed to work as a forum, chat software, or mailing list. It integrates easily with other platforms, and its functionality can be expanded with plugins.
This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘
sudo‘ to the commands to get root privileges. I will show you through the step-by-step installation of the Discourse on a Debian 11 (Bullseye).
- A server running one of the following operating systems: Debian 10 or Debian 11.
- It’s recommended that you use a fresh OS install to prevent any potential issues
non-root sudo useror access to the
root user. We recommend acting as a
non-root sudo user, however, as you can harm your system if you’re not careful when acting as the root.
Install Discourse on Debian 11 Bullseye
Step 1. Before we install any software, it’s important to make sure your system is up to date by running the following
apt commands in the terminal:
sudo apt update sudo apt upgrade sudo apt install apt-transport-https ca-certificates curl GnuPG
Step 2. Installing Docker.
Now we add the Docker GPG key:
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Next, add Docker repository:
echo \ "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] \ https://download.docker.com/linux/debian \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Then, update the packages and install the Docker using the following command below:
sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io
Step 3. Installing Discourse on Debian 11.
By default, Discourse is not available on Debian 11 base repository. So, now run the following command below to clone the Discourse installer from the GitHub page:
sudo mkdir /var/discourse sudo git clone https://github.com/discourse/discourse_docker.git /var/discourse
Finally, install Discourse using the following command:
cd /var/discourse sudo ./discourse-setup
Answer the following questions when prompted:
Hostname for your Discourse? [discourse.your-domian.com]: Email address for admin account(s)? [email@example.com]: SMTP server address? [smtp.your-domian.com]: SMTP port? : SMTP user name? [firstname.lastname@example.org]: SMTP password? [Y0ur-St0ng-pa$$word]: Let's Encrypt account email? (ENTER to skip) [email@example.com]:
Step 3. Configure Firewall.
By default, the UFW firewall is enabled on Debian. Depending on your Apache virtual host configuration file, open ports 80 and 443 to allow HTTP and HTTPS traffic:
sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw reload
Step 4. Accessing Discourse Web Interface.
Once successfully installed, open your web browser and access the Discourse using the URL
http://discourse.your-domian.com. You will get the following screen:
Congratulations! You have successfully installed Discourse. Thanks for using this tutorial for installing the latest version of the Discourse on Debian 11 Bullseye. For additional help or useful information, we recommend you check the official Discourse website.