Install OrangeScrum on CentOS 7: Step-by-Step Guide
OrangeScrum is an open-source project management platform, ideal for startups and mid-sized enterprises. This tutorial outlines how to set up OrangeScrum on a CentOS 7 system.
Prerequisites
- A newly deployed CentOS 7 server with at least 2GB RAM.
- Access to a sudo-enabled user account.
1. System Update on CentOS 7
Access your server using a sudo user and apply the latest updates:
$ sudo yum install epel-release -y
$ sudo yum update -y
$ sudo shutdown -r now
Once the server restarts, reconnect using the same sudo user credentials to continue the installation.
2. Apache Web Server Installation and Configuration
Begin by installing Apache:
$ sudo yum install httpd -y
Disable the default Apache welcome screen:
$ sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
Ensure Apache does not reveal directory listings through the browser:
$ sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
Launch the Apache service and configure it to start on boot:
$ sudo systemctl start httpd.service
$ sudo systemctl enable httpd.service
3. Installing and Configuring MariaDB on CentOS 7
Begin by setting up MariaDB, the database engine that OrangeScrum will utilize:
$ sudo yum install mariadb mariadb-server -y
Next, edit the MariaDB configuration file:
$ sudo nano /etc/my.cnf
Add the following configuration lines to the [mysqld]
section to set the proper character set and collation:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
init_connect='SET collation_connection=utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
Save your changes and close the text editor.
Now launch MariaDB and configure it to start automatically at boot:
$ sudo systemctl start mariadb.service
$ sudo systemctl enable mariadb.service
Secure your MariaDB installation by running the built-in script:
$ sudo /usr/bin/mysql_secure_installation
During the security setup, respond to the prompts as demonstrated below:
Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: <your-password>
Re-enter new password: <your-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y
4. PHP Installation and Configuration
Install the required PHP packages necessary to run OrangeScrum:
$ sudo yum -y install php
$ sudo yum -y install php-mysql
$ sudo yum -y install php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap php-tidy curl curl-devel
OrangeScrum requires larger upload limits. Increase the maximum upload size to 200MB by editing the PHP configuration file:
$ sudo cp /etc/php.ini /etc/php.ini.bak
$ sudo sed -i "s/post_max_size = 8M/post_max_size = 200M/" /etc/php.ini
$ sudo sed -i "s/upload_max_filesize = 2M/upload_max_filesize = 200M/" /etc/php.ini
Apply the updated configuration by restarting Apache:
$ sudo systemctl restart httpd.service
5. Download and Configure OrangeScrum
Obtain the latest stable OrangeScrum release and extract it:
$ cd
$ wget https://github.com/Orangescrum/orangescrum/archive/<VERSION>.tar.gz
$ tar -zxvf v1.6.1.tar.gz
Transfer the OrangeScrum files to the Apache web root and assign the necessary permissions:
$ sudo mv ~/orangescrum-1.6.1 /var/www/html && sudo chown root:root -R /var/www/html
$ sudo chmod -R 0777 /var/www/html/orangescrum-1.6.1/{app/Config,app/tmp,app/webroot}
Create a new Apache virtual host configuration for the OrangeScrum instance:
$ sudo nano /etc/httpd/conf.d/orangescrum.conf
Add the following virtual host configuration to the file:
<VirtualHost *:80>
ServerName orangescrum.example.com
DocumentRoot /var/www/html/orangescrum-1.6.1
<Directory /var/www/html/orangescrum-1.6.1>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Save the configuration and close the file.
6. Database Setup for OrangeScrum
Begin by accessing the MariaDB shell with root privileges:
$ mysql -u root -p
Enter the root password you created during the MariaDB secure installation process.
Once inside the database shell, create a new database and user for OrangeScrum. Make sure to replace placeholder values with your own credentials:
CREATE DATABASE orangescrum;
CREATE USER 'orangescrumuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON orangescrum.* TO 'orangescrumuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
Next, import the default OrangeScrum database schema into your newly created database:
$ mysql -u root -p orangescrum < /var/www/html/orangescrum-1.6.1/database.sql
Configure OrangeScrum to use the newly created database user and password:
$ sudo nano /var/www/html/orangescrum-1.6.1/app/Config/database.php
Locate and update these settings:
// Original
'login' => 'root',
'password' => '',
'database' => 'orangescrum',
// Modified
'login' => 'orangescrumuser',
'password' => 'yourpassword',
'database' => 'orangescrum',
Save and close the file.
Now update OrangeScrum’s email notification configuration:
$ sudo nano /var/www/html/orangescrum-1.6.1/app/Config/constants.php
Replace the default email settings with your own credentials:
define("SMTP_UNAME", "youremail@gmail.com");
define("SMTP_PWORD", "******");
define('FROM_EMAIL_NOTIFY', 'notify@mycompany.com');
define('SUPPORT_EMAIL', 'support@mycompany.com');
Save the configuration and close the editor.
Restart Apache to apply all the recent changes:
$ sudo systemctl restart httpd.service
To allow HTTP traffic through the server’s firewall, run the following commands:
$ sudo firewall-cmd --zone=public --permanent --add-service=http
$ sudo firewall-cmd --reload
To complete the installation, open your browser and navigate to http://<your-server-IP>
. Provide your organization name, email address, and password to access your OrangeScrum dashboard.
Conclusion
By following this comprehensive guide, you have successfully set up OrangeScrum on a CentOS 7 server. You installed and configured Apache, MariaDB, and PHP, downloaded OrangeScrum, created a database, and configured essential application settings including firewall rules and email notifications. With everything in place, your project management platform is now ready to streamline tasks, enhance team collaboration, and improve productivity within your organization. Visit your server IP in a web browser to begin using OrangeScrum.