5

How to Install OrangeScrum on CentOS 7

 2 years ago
source link: https://www.vultr.com/docs/how-to-install-orangescrum-on-centos-7
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Using a Different System?

Are we missing a guide for your target system? Request one, or submit your own!
<?xml encoding="utf-8" ??>

OrangeScrum is a free and open source project management tool which is widely used in small and medium businesses. This article describes the procedure of installing OrangeScrum on a CentOS 7 server.

Prerequisites

  • A fresh Vultr CentOS 7 server instance with minimum 2G of memory.
  • A sudo user.

1. Update the CentOS 7 system

Log into your machine as a sudo user and update the system.

$ sudo yum install epel-release -y
$ sudo yum update -y
$ sudo shutdown -r now

After the system reboots, log in as the same sudo user to proceed.

2. Install and Configure Apache

  1. Install Apache.

    $ sudo yum install httpd -y
    
  2. Remove the pre-set Apache welcome page.

    $ sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
    
  3. Prevent Apache from exposing files and directories in visitors' web browser.

    $ sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
    
  4. Start the Apache service.

    $ sudo systemctl start httpd.service
    $ sudo systemctl enable httpd.service
    

3. Install and Configure MariaDB

  1. Install MariaDB.

    $ sudo yum install mariadb mariadb-server -y
    
  2. Modify the MariaDB database settings.

    $ sudo nano /etc/my.cnf
    

    To change the collation settings, append a few lines to the [mysqld] segment as shown below.

    [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
    
  3. Save and exit the editor.

  4. Start the MariaDB service.

    $ sudo systemctl start mariadb.service
    $ sudo systemctl enable mariadb.service
    
  5. Secure the MariaDB installation.

    $ sudo /usr/bin/mysql_secure_installation
    
  6. During this interactive process, answer questions as shown 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. Install and Configure PHP

  1. Install the PHP Packages.

    $ 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
    
  2. Increase the upload file size to 200 MB as required by OrangeScrum.

    $ 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
    
  3. Restart Apache to load the new configuration.

    $ sudo systemctl restart httpd.service
    

5. Install OrangeScrum

  1. Locate the latest stable version of OrangeScrum.
  2. Download and unzip the file.

    $ cd
    $ wget https://github.com/Orangescrum/orangescrum/archive/<VERSION>.tar.gz
    $ tar -zxvf v1.6.1.tar.gz
    
  3. Move all OrangeScrum files to the web root directory /var/www/html and then setup appropriate 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}
    
  4. Setup a virtual host for OrangeScrum.

    $ sudo nano /etc/httpd/conf.d/orangescrum.conf
    
  5. Populate the file with the following settings.

    <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>
    
  6. Save and exit the editor.

6. Create an OrangeScrum Database

  1. Log into the MySQL shell as root.

    $ mysql -u root -p
    

    Use the MariaDB root password you set earlier to log in.

  2. In the MySQL shell, create a database named orangescrum and a database user named orangescrumuser with the password yourpassword, and then grant all privileges on this database to this database user.

    Note: On your machine, make sure to replace these parameters in all commands with your values.

    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;
    
  3. Import OrangeScrum data into the orangescrum database.

    $ mysql -u root -p orangescrum < /var/www/html/orangescrum-1.6.1/database.sql
    
  4. Update OrangeScrum database credentials.

    $ sudo nano /var/www/html/orangescrum-1.6.1/app/Config/database.php
    

    Find the following lines:

    'login' => 'root',
    'password' => '',
    'database' => 'orangescrum',
    

    Change them to:

    'login' => 'orangescrumuser',
    'password' => 'yourpassword',
    'database' => 'orangescrum',
    
  5. Save and exit the editor.

  6. Update email details.

    $ sudo nano /var/www/html/orangescrum-1.6.1/app/Config/constants.php
    

    Find the following lines. Replace the email addresses and the password with your values.

    define("SMTP_UNAME", "[email protected]");
    define("SMTP_PWORD", "******");
    define('FROM_EMAIL_NOTIFY', '[email protected]');
    define('SUPPORT_EMAIL', '[email protected]');
    
  7. Save and exit the editor.

  8. Restart Apache to load the new configuration.

    $ sudo systemctl restart httpd.service
    
  9. Change the firewall rules to allow web access.

    $ sudo firewall-cmd --zone=public --permanent --add-service=http
    $ sudo firewall-cmd --reload
    
  10. Navigate to http://<your-server-IP>, enter your company name, an email ID, and a password to login.

Want to contribute?

You could earn up to $600 by adding new articles


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK