How to Install Tine 2.0 on CentOS 7

How to Install Tine 2.0 on CentOS 7

In this tutorial we will show you how to install Tine 2.0 on a CentOS 7 VPS, with Apache, PHP and MariaDB. Tine 2.0 is an open source groupware and customer relationship management (CRM) application. Listed below are some of the main Tine 2.0 features:

  • Address book
  • Calendar
  • CRM
  • File manager
  • Human resources
  • Inventory
  • Synchronisation with mobile devices
  • Task management
  • Time tracker
  • VoIP integration
  • Web based mail client etc.

In order to install Tine 2.0 on your server, you need to make sure it meets the following requirements:

  • PHP 5.3 or later with the following PHP extensions enabled: ctype, date, dom, gd, hash, iconv, json, mcrypt, mysql, pdo_mysql, SimpleXML, SPL, xml and zip;
  • Apache Web Server 2.0 or later compiled with mod_rewrite module;
  • MySQL 5.0 or later or MariaDB installed on your virtual server.

1. Update OS Packages

Make sure that all OS packages are up to date by executing the following command:

yum -y update

2. Install Packages

Install the required packages:

yum install mariadb mariadb-server httpd php php-common php-gd php-ldap php-mcrypt php-mbstring php-xml unzip

3. Start and Configure Apache and MariaDB

Start the Apache web server and MariaDB database server and enable them to start on boot:

systemctl start httpd
systemctl start mariadb

systemctl enable httpd
systemctl enable mariadb

4. Download Tine 2.0

Download the latest stable version of Tine at http://www.tine20.org/download/ to the ‘/opt’ directory on the server. Then, extract it and move the Tine files and directories to the ‘/var/www/html/tine’ directory. At the time of writing this tutorial, the latest stable version of Tine is 2.0.

cd /opt/
wget http://packages.tine20.org/source/2015.07.6/tine20-allinone_2015.07.6.zip
mkdir -p /var/www/html/tine
unzip -d /var/www/html/tine tine20*.zip

5. Create New MariaDB Database

Create a new MariaDB database and user for the Tine 2.0 application:

mysql -uroot -p
MariaDB [(none)]> CREATE DATABASE tinedb DEFAULT CHARACTER SET 'UTF8';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON tinedb.* TO 'tine'@'localhost' IDENTIFIED BY 'y0ur_passw0rd';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit

6. Create a New Apache Configuration File

Create a new Apache configuration file (e.g. /etc/httpd/conf.d/your-domain.com.conf):

vi /etc/httpd/conf.d/your-domain.com.conf

Add the following virtual host directives to it:

<VirtualHost YOUR_SERVER_IP:80>
ServerAdmin webmaster@your-domain.com
DocumentRoot "/var/www/html/tine"
ServerName your-domain.com
ServerAlias www.your-domain.com
ErrorLog "/var/log/httpd/your-domain.com-error_log"
CustomLog "/var/log/httpd/your-domain.com-access_log" combined
<Directory "/var/www/html/tine/">
DirectoryIndex index.html index.php
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

7. Restart Apache

Restart the Apache service for the changes to take effect:

systemctl restart httpd

Copy the sample Tine configuration file:

cp /var/www/html/tine/config.inc.php.dist /var/www/html/tine/config.inc.php

Then, edit the newly created ‘config.inc.php’ configuration file. Add the database information and specify login credentials for the setup user. For example:

vi /var/www/html/tine/config.inc.php
<?php
return array(
 'captcha' => array('count'=>0),
 'database' => array(
 'host' => 'localhost',
 'dbname' => 'tinedb',
 'username' => 'tine',
 'password' => 'y0ur_passw0rd',
 'adapter' => 'pdo_mysql',
 'tableprefix' => 'tine20_',
 ),
 'setupuser' => array(
 'username' => 'setupuser',
 'password' => 'Ax6hd35RbM'
 ),

);

8. Configure Apache

Do not forget to change the password for the setup user.

The web server user (Apache) needs to be able to write to certain files and directories, so you can easily accomplish that by executing the following command:

chown apache:apache -R /var/www/html/tine

You may also create an empty ‘config.inc.php’ configuration file, make it writeable to the web server and modify it later via the setup interface:

touch /var/www/html/tine/config.inc.php
chown apache:apache -R /var/www/html/tine/config.inc.php
chmod 644 /var/www/html/tine/config.inc.php

9. Open Tine 2.0 in Web Browser and Continue With Installation

Open http://your-domain.com/setup.php in your favorite web browser to run the Tine installer and log in using the user login credentials defined in the Tine configuration file. Then, follow the installer’s instructions:

Accept the license and privacy agreements, click on ‘Setup Checks’ from the left-hand menu and if all PHP requirements are met, click on ‘Config Manager’ and set /tmp as a temporary file path.

Click on ‘Authentication/Accounts’ and set the admin login credentials, configure password settings and click on ‘Save config and install’ button.

Select ‘Application manager’ and install additional Tine modules, such as calendar, CRM, file manager, FeLaMiMail web-based IMAP email client, tasks etc. If you install FeLaMiMail, do not forget to configure IMAP and SMTP settings via ‘Email menu’.

That is it. The Tine installation is now complete. Log out as setup user and log in to the administrator back-end using the newly created administrator account. Here you can manage users, groups, specify privileges based on groups, manage installed Tine modules etc.

tine back-end

Of course you don’t have o Install Tine 2.0 on CentOS 7 if you use one of our Linux VPS Hosting services, in which case you can simply ask our expert Linux admins to Install Tine 2.0 on CentOS 7, for you. They are available 24×7 and will take care of your request immediately.

PS. If you liked this post, on How to Install Tine 2.0 on CentOS 7,  please share it with your friends on the social networks using the buttons on the left or simply leave a reply below. Thanks.

Leave a Comment