← 2. Setup a Discourse development environment (Ubuntu)
→ 4. Setup Disraptor
(based on discourse/discourse: INSTALL-cloud.md and discourse/discourse_docker: README.md.)
This document describes how to deploy Discourse with Disraptor. You will need root access to a docker-compatible 64-bit Linux server. You will also need a mail server and a domain name.
Get the following things ready:
tira.io
). Discourse requires a domain name for deployment. An IP address is not sufficient.info@tira.io
).smtp.tira.io
) of your mail server plus port (587), user name (e.g. admin
), and password.Install the following software on the server:
sudo apt install redis-server ruby postgresql
Note: This might work with older versions aswell. If you cannot get a hand on these easily try to make it work with what you have first.
Docker and git:
sudo apt install docker.io git
Clone the Discourse Docker repository into /var/discourse
:
sudo -s
mkdir /var/discourse
git clone https://github.com/discourse/discourse_docker.git /var/discourse
Run and follow the instructions of the Discourse setup script:
cd /var/discourse
./discourse-setup
This produces an app.yml
file and starts a bootstrap process.
Open the previously generated app.yml
file:
sudo vim containers/app.yml
In the section containing the hooks
key, add a command to clone the Disraptor repository as shown below:
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/disraptor/disraptor.git
Restart the bootstrap process:
./launcher rebuild app
List running Docker containers:
docker container ls