Overview

The Stack 205 provides detailed information on the database and application server configurations to install correctly the following ProcessMaker version under the platform CentOS/RHEL 7.2.

ProcessMaker 3.1 ProcessMaker 3.2
ProcessMaker 3.1.1
ProcessMaker 3.1.2
ProcessMaker 3.1.3

The Stack 205 is supported by ProcessMaker, meaning that it has been tested by the Quality Control team.

Summary

Platform Database PHP
CentOS/RHEL 7.2 MySQL 5.5.x 5.6.x
Web Server Filesystem Architecture
Apache 2.4.x ext4

Environment

Assuming CentOS 7.2 Core or Desktop is already installed, please read the following instructions in order to have the stack ready to be configured and install ProcessMaker.

Step 1: Disable MariaDB

MariaDB is a drop-in replacement for MySQL installed by default on CentOS 7.2. It is necessary to uninstall MariaDB in order to avoid issues with MySQL which is the default database system for ProcessMaker.
To accomplish this, open a terminal and enter the following command:

yum -y remove mariadb*

Step 2: Install Apache 2.4

mod_ssl is an Apache module that provides SSL v2/v3 and TLS v1 support for the Apache HTTP Server necessary for ProcessMaker.
Run the following command to install Apache 2.4 and the SSL module:

yum -y install httpd mod_ssl

Then, start the Apache service and set it to start automatically at boot.

service httpd start chkconfig httpd on

Make sure the httpd service is running by checking its status with the following command:

systemctl status httpd

The status of the httpd service should be active (running):

Step 3: Install PHP 5.6

CentOS 7 (and its actually EPEL repository) comes with PHP 5.4 by default. PHP 5.4 is no longer supported, therefore do not forget to add the following repository before installing PHP 5.6.

First, add the corresponding EPEL repository to download PHP.

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Then, install PHP 5.6 along with all the following extensions that ProcessMaker needs to work properly.

yum -y install php56w yum -y install php56w-mysqlnd php56w-gd php56w-soap php56w-ldap php56w-xml php56w-mbstring php56w-cli php56w-curl php56w-mcrypt php56w-devel php56w-pecl-apcu

To check if all the PHP modules were installed, run the following command:

rpm -qa |grep php

The outcome will be similar to the following:

Step 4: Install MySQL 5.5.X

Warning: ProcessMaker is not compatible with MySQL STRICT mode which is turned on by default in MySQL 5.7. This version of MySQL is NOT part of any official stack of ProcessMaker, which means that the application has not being tested enterily in this MySQL version. So, there can be no certainty that ProcessMaker will run correctly in MySQL 5.7, even if the strict mode is disabled.
Read the Turning off MySQL STRICT Mode section to disable it.

Download the latest bundle MySQL-5.5.X version directly in the server from the official source: http://dev.mysql.com/downloads/mysql/5.5.html#downloads (Choose Generics or Compatible EL version).

For instance, at the moment, the latest current version is MySQL 5.5.50:

Then, decompress the file:

tar -xvf MySQL-5.5.X.linux2.6.x86_64.rpm-bundle.tar

Install the MySQL Server and MySQL Client with the following commands.

rpm -ivh MySQL-server-5.5.X-1.x86_64.rpm rpm -ivh MySQL-client-5.5.X-1.x86_64.rpm

Start the MySQL service and set it to start automatically at boot.

service mysql start chkconfig mysql on

Make sure the mysql service is running by checking its status with the following command:

systemctl status mysql

The status of the mysql service should be active (running):

Step 5: Disable SELINUX

Run the following commands to disable SELinux:

echo "SELINUX=disabled" > /etc/selinux/config echo "SELINUXTYPE=targeted" >> /etc/selinux/config

Step 6: Install Firewall and open ProcessMaker port

By default, CentOS 7 can not work without firewall, therefore it is recommended to install Firewalld to easily configure it. Firewalld is a dynamic daemon to manage firewall with support for networks zones. To install it run the following command:

yum -y install firewalld

Then, set the service to start automatically.

service firewalld start chkconfig firewalld on

After that, open the port in which ProcessMaker will run, this port is by default port 80. If not using the standard port 80, then it is necessary to change the port number in the following command.

firewall-cmd --zone=public --add-port=80/tcp --permanent firewall-cmd --reload

Configuration and ProcessMaker Installation

Continue with Step 2: CentOS Installation on to configure Apache, MySQL, PHP and install ProcessMaker.