Install And Configure Discourse Development Environment On Ubuntu

Exported on 31-Aug-2021 18:04:16

Automated Installation for Discourse, Helps create a gully functional forum for your community in minutes.

Parameters

Name Type Script Reference Default Value Comment
s1 Linux / Unix Server s1
s1c Linux OS Credential s1c

1 - Install Docker For Ubuntu

Installs docker to run the discourse image

The connection details have changed from the last step.

Login as user on node

Connect via SSH
ssh user@hostname
This is a Bash Script make sure you run it with bash -l from a terminal session
# Update apt repositories
sudo apt update

# Install docker
wget -qO- https://get.docker.com/ | sh

2 - Start Docker Service

Starts docker daemon

Login as user on node

Connect via SSH
ssh user@hostname
This is a Bash Script make sure you run it with bash -l from a terminal session
#Start docker
sudo service docker start

3 - Clone Discourse Repository

Downloads the latest release of the Discourse source code

Login as user on node

Connect via SSH
ssh user@hostname
This is a Bash Script make sure you run it with bash -l from a terminal session
# Clone latest release from Discourse github repo
sudo git clone https://github.com/discourse/discourse_docker.git

4 - Upload Discourse Config File

Uploads discourse initial configuration file.

Replace following variables with your own, currently we are using a dummy SMTP server credential from Mailjet:

DISCOURSE_HOSTNAME: 'discourse.test' DISCOURSE_DEVELOPER_EMAILS: 'me@example.com,you@example.com'

DISCOURSE_SMTP_ADDRESS: in-v3.mailjet.com DISCOURSE_SMTP_PORT: 587 DISCOURSE_SMTP_USER_NAME: 03114bcb5c42df3c21e42fd0bb27ff95 DISCOURSE_SMTP_PASSWORD: 098f7c25bbea521bc4bbc6ae9d52c591

Login as user on node

Connect via SSH
ssh user@hostname
Deploy archive discourse-app.yml.zip to remote path uploads
  1. Locate Files archive "discourse-app.yml.zip", This can be downloaded from Attune
  2. Copy the Files archive to the server
  3. Extract the root of the Files archive to uploads, relative to the home directory
  4. Check that the files are in the correct location

5 - Configure Discourse

Places the default configuration file to discourse project location

Login as user on node

Connect via SSH
ssh user@hostname
This is a Bash Script make sure you run it with bash -l from a terminal session
# Move config file
sudo mv ~/uploads/discourse-app.yml ~/discourse_docker/containers/app.yml

6 - Rebuild Discourse Image

Rebuilds docker application image

Login as user on node

Connect via SSH
ssh user@hostname
This is a Bash Script make sure you run it with bash -l from a terminal session
#CD Into discourse directory
cd ~/discourse_docker/

# Creates a fresh Discourse image from the source
sudo ./launcher rebuild app

7 - Run Discourse

Installs screen required to run the build process in background.

Once the build is complete, it launches the Discourse application server. You can see the background process by running: screen -x

Login as user on node

Connect via SSH
ssh user@hostname
This is a Bash Script make sure you run it with bash -l from a terminal session
#CD Into discourse directory
cd ~/discourse_docker/

# Lauches discourse application
sudo ./launcher run app