Overview

Stack 205 provides detailed information about the database and application server configurations needed to correctly install the following versions of ProcessMaker on the platform CentOS/RHEL 7.2.

ProcessMaker 3.1 ProcessMaker 3.2
ProcessMaker 3.1.1 ProcessMaker 3.2.1
ProcessMaker 3.1.2
ProcessMaker 3.1.3

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 64-bit

Environment

Assuming CentOS 7.2 Core or Desktop is already installed, please read the following instructions to have the stack ready to be configured before installing ProcessMaker.

Step 1: Disable MariaDB

MariaDB is a drop-in replacement for MySQL installed on CentOS 7.2 by default. It is necessary to uninstall MariaDB to avoid issues with MySQL, which is the default database system for ProcessMaker.
To uninstall MariaDB, 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 EPEL repository) comes with PHP 5.4 by default. PHP 5.4 is no longer supported by ProcessMaker, so 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 ProcessMaker has not been tested entirely in this version of MySQL. 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 of MySQL-5.5.X directly to the server from the official source: http://dev.mysql.com/downloads/mysql/5.5.html#downloads (choose Generics or Compatible EL version).

For instance, download the latest version of MySQL, which is currently 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's Port

By default, CentOS 7 can not work without firewall, therefore it is recommended to install Firewalld so it can be easily configured. Firewalld is a dynamic daemon that manages 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 where ProcessMaker will run, which is port 80 by default. To use a port other than port 80, then it is necessary to change the port number using the following command.

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

Configuration and ProcessMaker Installation

Read Step 2: CentOS Installation to learn how to configure Apache, MySQL, PHP and install ProcessMaker.