{"id":7224,"date":"2018-11-13T18:55:05","date_gmt":"2018-11-13T15:55:05","guid":{"rendered":"https:\/\/www.howtoforge.com\/tutorial\/ubuntu-orangescrum-installation\/"},"modified":"2018-11-13T18:55:05","modified_gmt":"2018-11-13T15:55:05","slug":"how-to-install-and-configure-orangescrum-on-ubuntu-18-04-lts","status":"publish","type":"post","link":"https:\/\/afaghhosting.net\/blog\/how-to-install-and-configure-orangescrum-on-ubuntu-18-04-lts\/","title":{"rendered":"How to Install and Configure OrangeScrum on Ubuntu 18.04 LTS"},"content":{"rendered":"<p>OrangeScrum is a free and open source project management and collaboration tool written in PHP with CakePHP framework. It is simple, easy to use and ideal for small or medium businesses. It is used to manage projects, teams, documents, task, and communicate with the team on important issues. Orangescrum comes with lots of features like, Visual representation, kanban view, All in one screen, daily email catch-up, Gantt Charts, conversation thread, ticketing system, Dropbox integration, and many more. You can easily collaborate with Employees, Leaders, Clients and Freelancers from the central location.<\/p>\n<p>In this tutorial, we will explain\u00a0the installation and configuration of OrangesCrum on Ubuntu 18.04 LTS server.<\/p>\n<h2 id=\"requirements\">Requirements<\/h2>\n<ul>\n<li>A server running Ubuntu 18.04.<\/li>\n<li>A non-root user with sudo privileges.<\/li>\n<\/ul>\n<h2 id=\"getting-started\">Getting Started<\/h2>\n<p>First, update your system with the latest version by running the following command:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo apt-get update -y<br\/>sudo apt-get upgrade -y<\/code><\/pre>\n<p>Once your system is updated, restart your system to apply the changes.<\/p>\n<h2 id=\"install-lamp-server\">Install LAMP Server<\/h2>\n<p>Before starting, you will need to install Apache, MariaDB, PHP and other PHP modules to your system. You can install all of them by running the following command:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo apt-get install apache2 mariadb-server php7.2 php7.2-bcmath php7.2-cgi php7.2-cli php7.2-common php-curl php7.2-dba php7.2-enchant php7.2-fpm php7.2-gd php7.2-imap php7.2-intl php7.2-ldap php7.2-mbstring php7.2-mysql php7.2-opcache php-imagick php-memcache php7.2-soap php7.2-tidy php7.2-xml php7.2-zip libapache2-mod-php7.2 xvfb libfontconfig wkhtmltopdf unzip wget -y<\/code><\/pre>\n<p>Once all the packages are installed, you will need to make some changes in php.ini file:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo nano \/etc\/php\/7.2\/apache2\/php.ini<\/code><\/pre>\n<pre>post_max_size = 200M&#13;\nupload_max_filesize = 200M&#13;\nmax_execution_time = 300&#13;\nmemory_limit = 512M&#13;\nmax_input_vars = 5000&#13;\n<\/pre>\n<p>Save and close the file. Then, start Apache and MariaDB service and enable them to start on boot time with the following command:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo systemctl start apache2<br\/>sudo systemctl start mariadb<br\/>sudo systemctl enable apache2<br\/>sudo systemctl enable mariadb<\/code><\/pre>\n<h2 id=\"configure-database\">Configure Database<\/h2>\n<p>By default, MariaDB is not secure. So, you will need to secure it first. You can secure it by running the following command:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo mysql_secure_installation<\/code><\/pre>\n<p>Answer all the questions as shown below:<\/p>\n<pre> Enter current password for root (enter for none):&#13; Set root password? [Y\/n]: N&#13; Remove anonymous users? [Y\/n]: Y&#13; Disallow root login remotely? [Y\/n]: Y&#13; Remove test database and access to it? [Y\/n]: Y&#13; Reload privilege tables now? [Y\/n]: Y&#13;\n<\/pre>\n<p>Once the MariaDB is secured, log in to MariaDB shell:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">mysql -u root -p<\/code><\/pre>\n<p>Enter your root password, then create a database and user for Orangscrum:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">MariaDB [(none)]&gt; CREATE DATABASE orangescrumdb;<br\/>MariaDB [(none)]&gt; GRANT ALL PRIVILEGES ON orangescrumdb.* TO 'orangescrumuser'@'localhost' IDENTIFIED BY 'password';<\/code><\/pre>\n<p>Replace &#8216;password&#8217; with a secure password in the abive SQL command.<\/p>\n<p>Next, flush the privileges and exit from the MariaDB shell:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">MariaDB [(none)]&gt; FLUSH PRIVILEGES;<br\/>MariaDB [(none)]&gt; exit;<\/code><\/pre>\n<p>Next, you will need to disable strict mode for MariaDB. You can do this by creating disable_strict_mode.cnf file:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo nano \/etc\/mysql\/conf.d\/disable_strict_mode.cnf<\/code><\/pre>\n<p>Add the following lines:<\/p>\n<pre>[mysqld]&#13;\nsql_mode=\"IGNORE_SPACE,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION\"&#13;\n<\/pre>\n<p>Save and close the file. Then, restart MariaDB to apply all the changes:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo systemctl restart mariadb<\/code><\/pre>\n<h2 id=\"install-orangescrum\">Install Orangescrum<\/h2>\n<p>First, download the latest version of Orangescrum from <a href=\"https:\/\/www.orangescrum.org\/free-download\" target=\"_blank\" rel=\"noopener\">https:\/\/www.orangescrum.org\/free-download<\/a>.<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">cd \/tmp<br\/>wget https:\/\/www.orangescrum.org\/free-download\/418ae4d8ef1309695804a7837cd4fc65\/ubuntu18-php7 -O orangescrum-ubuntu18-php7.zip<\/code><\/pre>\n<p>Once the download is completed, extract the downloaded file with the following command:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">unzip orangescrum-ubuntu18-php7.zip<\/code><\/pre>\n<p>Next, copy the extracted directory to the Apache web root directory:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo cp -r orangescrum-orangescrum-ubuntu18-php7 \/var\/www\/html\/orangescrum-master<\/code><\/pre>\n<p>Next, change the directory to the <em>\/var\/www\/<\/em>html<em>\/<\/em>orangescrum<em>-master<\/em> and import OrangeScrum database into your newly created database:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">cd \/var\/www\/html\/orangescrum-master<br\/>sudo mysql -u orangescrumuser -p orangescrumdb &lt; database.sql<\/code><\/pre>\n<p>Enter the password that you have chosen for the &#8216;orangescrumuser&#8217; MySQL user when requested by the mysql command.<\/p>\n<p>Next, edit the database.php file:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo nano app\/Config\/database.php<\/code><\/pre>\n<p>Make the following changes:<\/p>\n<pre>class DATABASE_CONFIG {&#13;\n&#13; public $default = array(&#13; 'datasource' =&gt; 'Database\/Mysql',&#13; 'persistent' =&gt; false,&#13; 'host' =&gt; 'localhost',&#13; 'login' =&gt; 'orangescrumuser',&#13; 'password' =&gt; 'password',&#13; 'database' =&gt; 'orangescrumdb',&#13; 'prefix' =&gt; '',&#13; 'encoding' =&gt; 'utf8',&#13; );&#13;\n}&#13;\n<\/pre>\n<p>Replace the password with the password that you&#8217;ve chosen when creating the database and MySQL user. Save and close the file. Then, edit config.ini.php file:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo nano app\/Config\/config.ini.php<\/code><\/pre>\n<p>Add your SMTP server details as per your need:<\/p>\n<pre>[EMAIL INFO]&#13;\nSMTP_UNAME = admin &#13;\nSMTP_PWORD = password&#13;\nSMTP_HOST = smtp.example.com&#13;\nSMTP_PORT = 25&#13;\n&#13;\n[PDF PATH]&#13;\nPDF_LIB_PATH = \/usr\/bin\/wkhtmltopdf&#13;\n<\/pre>\n<p>Save and close the file.<\/p>\n<p>Next, give proper permissions to the orangescrum directory:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo chown -R www-data:www-data \/var\/www\/html\/orangescrum-master\/<br\/>sudo chmod -R 775 \/var\/www\/html\/orangescrum-master\/<\/code><\/pre>\n<h2 id=\"configure-apache-for-orangescrum\">Configure Apache for Orangescrum<\/h2>\n<p>Next, create an Apache virtual host file for Orangescrum. You can do this with the following command:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo nano \/etc\/apache2\/sites-available\/orangescrum.conf<\/code><\/pre>\n<p>Add the following lines:<\/p>\n<pre>&lt;VirtualHost *:80&gt;&#13; ServerAdmin <a href=\"https:\/\/www.howtoforge.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"f8999c959196b89d80999588949dd69b9795\" target=\"_blank\" rel=\"noopener\">[email\u00a0protected]<\/a>&#13; DocumentRoot \/var\/www\/html\/orangescrum-master\/&#13; ServerName example.com&#13; &lt;Directory \/var\/www\/html\/orangescrum-master\/&gt;&#13; DirectoryIndex index.php index.html&#13; AllowOverride All&#13; Allow from all&#13; Order allow,deny&#13; Options Indexes FollowSymlinks&#13; &lt;\/Directory&gt;&#13;\n&lt;\/VirtualHost&gt;&#13;\n<\/pre>\n<p>Replace example.com with your own domain name in the vhost file. Save and close the file.<\/p>\n<p>Then, enable Apache virtual host file with the following command:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo a2ensite orangescrum.conf<\/code><\/pre>\n<p>Next, enable mbstring, rewrite and headers module with the following command:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo phpenmod mbstring<br\/>sudo a2enmod rewrite<br\/>sudo a2enmod headers<\/code><\/pre>\n<p>Finally, restart Apache service to apply all the changes by running the following command:<\/p>\n<pre class=\"command\"><code spellcheck=\"false\">sudo systemctl restart apache2<\/code><\/pre>\n<h2 id=\"access-orangescrum-web-interface\">Access Orangescrum Web Interface<\/h2>\n<p>Now, open your web browser and type the URL http:\/\/example.com. You will be redirected to the Orangescrum welcome page:<\/p>\n<p><a class=\"fancybox\" id=\"img-page1\" href=\"https:\/\/www.howtoforge.com\/images\/how_to_install_and_configure_orangescrum_on_ubuntu_1804\/big\/page1.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/11\/how-to-install-and-configure-orangescrum-on-ubuntu-18-04-lts.png\" alt=\"Sign up for admin account\" width=\"550\" height=\"293\" title=\"\"><\/a><\/p>\n<p>The error about write permissions in tmp folder can be ignored, the permissions are fine. The error will go away after initial signup.<\/p>\n<p>Provide your site name, email address and password. Then, click on the <strong>Signup<\/strong> button. You will be redirected to the Orangescrum dashboard in the following page:<\/p>\n<p><a class=\"fancybox\" id=\"img-page2\" href=\"https:\/\/www.howtoforge.com\/images\/how_to_install_and_configure_orangescrum_on_ubuntu_1804\/big\/page2.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/11\/how-to-install-and-configure-orangescrum-on-ubuntu-18-04-lts-1.png\" alt=\"OrangeScrum Dashboard\" width=\"550\" height=\"286\" title=\"\"><\/a><\/p>\n<h2 id=\"virtual-machine-image-download-of-this-tutorial\">Virtual machine image download of this tutorial<\/h2>\n<p>This tutorial is available as ready to use virtual machine image in ovf\/ova format that is compatible with VMWare and Virtualbox. The virtual machine image uses the following login details:<\/p>\n<p><strong>SSH \/ Shell Login<\/strong><\/p>\n<p>Username: administrator<br \/>Password: howtoforge<\/p>\n<p>This user has sudo rights.<\/p>\n<p><strong>Orangescrum Login<\/strong><\/p>\n<p>Username:\u00a0<a href=\"https:\/\/www.howtoforge.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"e48d8a828ba4819c8589948881ca878b89\" target=\"_blank\" rel=\"noopener\">[email\u00a0protected]<\/a><br \/>Password: howtoforge<\/p>\n<p><strong>MySQL Login<\/strong><\/p>\n<p>Username:\u00a0root<br \/>Password: howtoforge<\/p>\n<p>and<\/p>\n<p><span>Username: orangescrumuser<\/span><br \/><span>Password: password<\/span><\/p>\n<p>The IP of the VM is 192.168.1.100, it can be changed in the file \/etc\/netplan\/01-netcfg.yaml. Please change all the above passwords to secure the virtual machine. The Download-Link for the VM is in the menu on the right side, near the top.<\/p>\n<h2 id=\"links\">Links<\/h2>\n","protected":false},"excerpt":{"rendered":"<p>OrangeScrum is a free and open source project management and collaboration tool written in PHP with CakePHP framework. It is simple, easy to use and ideal for small or medium businesses. It is used to manage projects, teams, documents, task, and communicate with the team on important issues. Orangescrum comes with lots of features like, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36],"tags":[],"class_list":["post-7224","post","type-post","status-publish","format-standard","hentry","category-36"],"_links":{"self":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts\/7224","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/comments?post=7224"}],"version-history":[{"count":0,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts\/7224\/revisions"}],"wp:attachment":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/media?parent=7224"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/categories?post=7224"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/tags?post=7224"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}