Ref : https://hostpresto.com/community/tutorials/communityarticleshow-to-setup-and-install-orangescrum-on-ubuntu-14-04/
Requirements
- A Server running Ubuntu 14.04
- A Static IP Address for your server
Install Mysql
By default the mysql package is available in the Ubuntu 14.04 repository.
So, you can easily install mysql using the following command:
sudo apt-get install mysql-server
After this, start mysql service and enable mysql to start on boot.
sudo /etc/init.d/mysql start
sudo update-rc.d mysql defaults
Install Php and Apache
After installing mysql, you will need to install PHP and Apache.
sudo apt-get install libapache2-mod-php5 php5 php5-cli php5-common php5-gd php5-mcrypt php5-mysql apache2
After this, start Apache service and enable Apache to start on boot.
sudo /etc/init.d/apache2 start
sudo update-rc.d apache2 defaults
Download Orangescrum and Upload it to Apache Web root
You can download Orangescrum open source version from url https://github.com/Orangescrum/orangescrum
.
sudo wget https://github.com/Orangescrum/orangescrum/archive/master.zip
After downloading Orangescrum you will need to unzip master.zip
.
sudo unzip master.zip
After this, You will find the orangescrum-master
directory.
Now, move this directory with name orangescrumPM to your Apache web root directory.
sudo mv orangescrum-master /var/www/html/orangescrumPM
Give proper permissions to the orangescrumPM
directory.
sudo chown -R www-data:www-data /var/www/html/orangescrumPM
sudo chmod -R 777 /var/www/html/orangescrumPM
Configure Mysql
In order to log into MySQL to secure it, you’ll need the current password for the root user. If you’ve just installed MySQL, and you haven’t set the root password yet, the password will be blank.
sudo mysql_secure_installation
Answer all the questions shown as below:
Enter current password for root (enter for none): **currentrootpasswd**
Set root password? [Y/n]: **Press Enter**
New password: **rootsqlpasswd**
Re-enter new password: **rootsqlpasswd**
Remove anonymous users? [Y/n]: **Press Enter**
Disallow root login remotely? [Y/n]: **Press Enter**
Remove test database and access to it? [Y/n] : **Press Enter**
Reload privilege tables now? [Y/n] : **Press Enter**
All done! If you’ve completed all of the above steps, your MySQL installation should now be secure. Now, You need login to mysql, create database and user for Orangescrum.
sudo mysql -u root -p
Create the database with the name Orangescrum:
mysql> create database orangescrum;
Create the user with the name orangescrum:
mysql> create user orangescrum;
Grant all privileges while assigning the password, chose a secure password and replace my-secret-password with your own:
mysql> grant all on orangescrum.* to 'orangescrum'@'localhost' identified by 'my-secret-password';
Exit from the mysql shell:
mysql> exit
Now, You will need to import the database from database.sql
file located in /var/www/html/orangescrumPM
directory.
First, change into the orangescrum directory:
sudo cd /var/www/html/orangescrumPM/
Now import the sql file:
sudo mysql -u orangescrum -porangescrum < database.sql
Next, by default STRICT mode
is On
in Mysql. So you need to disable it.
You can do this by editing my.cnf
file:
sudo nano /etc/mysql/my.cnf
Add the following line at the end of file:
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
Save and close the file, restart mysql to reflect changes.
sudo /etc/init.d/mysql restart
##Configure PHP
Now, You wiil need to change the ‘post_max_size’ and upload_max_filesize
to 200M
in php.ini
.
You can do this by editing the php.ini
file:
sudo nano /etc/php5/cli/php.ini
Change the post_max_size
and upload_max_size
as shown below:
post_max_size=200M
...
upload_max_filesize=200M
Save and close the file.
Configure Apache
The next step is to add orangescrumPM in the Apache default configuration file.
You can do this by editing apache2.conf
file:
sudo nano /etc/apache2/apache2.conf
Add the following content:
``` language-bash
Options Indexes ExecCGI MultiViews FollowSymLinks AllowOverride All Order allow,deny Allow from all
When you are finished, it is recommended to check the configuration for syntax errors.
`sudo apachectl configtest`
You should see following output if Apache configuration syntax is correct:
Syntax OK
After the syntax check is done you need to enable Apache headers and rewrite module.
You can do this by running:
`sudo a2enmod rewrite` `sudo a2enmod headers`
Now, restart Apache to reflect the changes:
`sudo /etc/init.d/apache2 restart`
## Configure Orangescrum
Now you need to update the database connection details in `database.php` file.
You can do this by editing `database.php` file.
`sudo nano /var/www/html/orangescrumPM/app/Config/database.php`
Change the following lines, not forgetting to substitute in your password instead of 'my-secret-password':
class DATABASE_CONFIG {
public $default = array( 'datasource' => 'Database/Mysql', 'persistent' => false,'host' => 'localhost', 'login' => 'orangescrum', 'password' => 'my-secret-password', 'database' => 'orangescrum', 'prefix' => '', 'encoding' => 'utf8', );}
Save and close the file when you are finished.
Next, you will need to provide an SMTP service for Orangescrum to send email from. In this example we use a Gmail account, but you can use any SMTP service such as Sendgrid or Mandrill.
Edit the Orangescrum `constants.php` file:
`sudo nano /var/www/html/orangescrumPM/app/Config/constants.php`
Change the following line:
//Gmail SMTP
define("SMTP_HOST", "ssl://smtp.gmail.com");
define("SMTP_PORT", "465");
define("SMTP_UNAME", "user@gmail.com");
define("SMTP_PWORD", "**********");define('FROM_EMAIL_NOTIFY', 'user@gmail.com'); //(REQUIRED)
define('SUPPORT_EMAIL', 'user@gmail.com'); //(REQUIRED) From Email
define("DEV_EMAIL", 'user@gmail.com'); // Developer Email ID to report the application error
define('SUB_FOLDER', '/');
“`
FROM_EMAIL_NOTIFY : All the tasks created/updated notification emails will be sent from this email address.
SUPPORT_EMAIL : All other emails and support related emails will be sent from this email address.
Save and close the file, when you are finished.
##Testing Orangescrum
From a remote machine, open your Firefox browser and type url http://your-server-ip-address
You will be asked to provide your Company Name, Email address and a Password to login and start using Orangescrum.
After this, you can see the orangescrum welcome page.