Setup Flarum on Digital Ocean
I'm always trying out new community platforms, so I figured I'd try out Flarum, which is from the developer of esoTalk. It is a very clean and clutter free forums, but very much in an alpha state. If you are interested in trying it out, here is a guide how to install it on Digital Ocean.
Create Droplet
Select LEMP on 14.04 with at least 1 GB of RAM as the Composer install script won't run on 512 MB. Once created login to your new droplet by running ssh root@ip address
in terminal.
Create Database
Now that you are connected via terminal, you have to create a database for Flarum. Since we created a LAMP mySQL is already installed.
Run cat /etc/motd.tail
to get your mySQL root password which was created with the LAMP image.
Now we can log to mySQL and create the DB.
mysql -uroot -p
mysql> CREATE DATABASE flarum;
mysql> GRANT ALL PRIVILEGES ON flarum.* TO 'flarum'@'localhost' IDENTIFIED BY 'strongpassword';
FLUSH PRIVILEGES;
\\q
Note: Make sure you replace strongpassword
with a password of your own. PasswordGenerator is an fast and strong password generator.
Installing Flarum
Now that we have a database, we can install Flarum.
First we have to install Composer which will install all the required libraries and dependencies for Flarum.
curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer
Create a folder for Flarum to live
sudo mkdir -p /usr/share/nginx/html/flarum
Run Flarum Composer Script
cd /usr/share/nginx/html/flarum composer create-project flarum/flarum . --stability=beta
Flarum is now installed, but we have to setup URL rewriting for it to work correctly.
sudo nano /etc/nginx/sites-available/default
Add the following in location /
try_files $uri $uri/ /index.php?$query_string;
Now copy this after the }
in location /
try_files $uri $uri/ /flarum/index.php?$args;
location /flarum/ { try_files $uri $uri/ /flarum/index.php?$query_string; }
location /flarum/api { try_files $uri $uri/ /flarum/api.php?$query_string; }
location /flarum/admin { try_files $uri $uri/ /flarum/admin.php?$query_string; }
}
Reload nginx
service nginx restart
Flarum is now ready to setup in the web interface, just go to http://ip address/flarum
. It will ask you to fill in the database information from above and create an admin user. Once that is complete you are done and ready to start trying Flarum.
Hopefully this makes it as easy as possible to setup and give Flarum a try. It is a very neat piece of software and hopefully the team will continue making improvements and feature updates.