Difference between revisions of "Process:Installation guide"

From MintHCM Wiki

m (Requirements)
Line 7: Line 7:
 
For instructions for previous releases please visit [[Process:Installation_guide_MintHCM_v3|MintHCM 3.x Installation Guide]]
 
For instructions for previous releases please visit [[Process:Installation_guide_MintHCM_v3|MintHCM 3.x Installation Guide]]
  
==Requirements==
+
==Requirements==  
To run MintHCM, your system must have (Other versions are not supported!):  
+
Before installing MintHCM, ensure that your system meets the following requirements:
* PHP 7.4 - 8.0
+
* '''Web Server''':
* MySQL 5.7, 8.0 or Percona 8.0 or MariaDB 10
+
** Linux or Windows machine running Apache2
* ElasticSearch 7.9
+
* '''PHP''':
* Web Server: Apache2
+
** 7.4 - 8.0
 +
* '''Database''' (one of the following):
 +
** MySQL 5.7 or 8.0
 +
** Percona 8.0
 +
** MariaDB 10
 +
* '''ElasticSearch''':
 +
** 7.9
 +
 
 
<br>
 
<br>
Apache2 Configuration:
+
===== Apache2 Configuration: =====
 
* Required Modules: Rewrite and Headers
 
* Required Modules: Rewrite and Headers
 
* AllowOverride: Ensure that AllowOverride All is set within the <Directory> directive for MintHCM in your Apache configuration. This allows the use of .htaccess files for additional configuration.
 
* AllowOverride: Ensure that AllowOverride All is set within the <Directory> directive for MintHCM in your Apache configuration. This allows the use of .htaccess files for additional configuration.
Line 33: Line 40:
 
</pre>
 
</pre>
 
<br>
 
<br>
MintHCM is compatible with Chromium, Firefox, and Edge web browsers. Unfortunately, we do not support IE, but you can still test and use it by yourself.
+
===== Browser compatibility =====
 +
MintHCM offers a user-friendly interface accessible through the following web browsers:
 +
* Chromium
 +
* Firefox
 +
* Edge
 +
<br>
 +
While we strive to provide the best user experience on these browsers, Internet Explorer (IE) is not supported. However, you are welcome to test and use it at your discretion.
 +
 
 +
==Getting started==
  
==Preparing for installation==
+
===== Download MintHCM =====
 +
Download the latest release of MintHCM zip file from the official website: https://minthcm.org/download/
 +
<br>
  
To install MintHCM you will need Linux or Windows platform, a web server with PHP installed and a database.  
+
===== Copy the zip file to your server =====
 +
Copy the downloaded zip file to your server using your preferred method (e.g., SCP, FTP).
 +
<br>
  
The first step towards installation is downloading MintHCM to your server and preparing files to be installed. To do so, follow the steps:
+
===== Unzip the files =====
 +
Navigate to the directory where you want to install MintHCM and unzip the downloaded file.
 +
<syntaxhighlight lang="bash">
 +
cd /path/to/your/MintHCMdirectory
 +
unzip MintHCM.zip
 +
</syntaxhighlight>
  
# Download MintHCM zip file from https://minthcm.org/download/
+
===== Change file permissions =====
# Copy the zip file to your server
+
Adjust file permissions based on your platform's requirements. For Ubuntu Linux with Apache, use the following commands:
# Unzip it in the directory of your choice
 
# Change files permissions in that directory accordingly with your platform demands
 
 
For Ubuntu Linux/Apache it will be:
 
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
cd ../<yourMintHCMdirectory>
+
cd /path/to/your/MintHCMdirectory
 
sudo chown -R www-data:www-data .
 
sudo chown -R www-data:www-data .
 
sudo chmod -R 755 .
 
sudo chmod -R 755 .
 
</syntaxhighlight>
 
</syntaxhighlight>
where www-data are default user and group for Ubuntu Linux/Apache. However, it might have been changed on your server. '''Use the actual system user and group.'''
+
Note: Replace www-data:www-data with the actual user and group on your server if they differ from Linux/Apache defaults. This ensures proper ownership and permissions for MintHCM files.
  
==Installation of MintHCM==
+
== Installation process ==
  
Once you have your files prepared, you can start actual installation. To do so, follow the steps below:
+
'''Open the Installation Wizard'''
  
'''1. Open your web browser and enter the following URL to start the installation wizard.'''
+
Open your web browser and enter the following URL to initiate the installation wizard:
  
 +
<syntaxhighlight lang="bash">
 
  https://my-server-or-domain.com/my-minthcm-directory
 
  https://my-server-or-domain.com/my-minthcm-directory
 +
</syntaxhighlight>
  
The installation wizard will start now.  
+
The installation wizard will commence automatically, guiding you through the setup process. Follow the on-screen instructions to configure MintHCM for your environment.
  
'''2. On the first screen you have to accept the licence agreement. After that you can click the next button.'''
+
===== 1. Accept the License Agreement =====
 +
On the first screen, you need to accept the license agreement. After that, you can click the "Next" button.
  
 
[[File:MintHCM Installation - License.png|900px|thumb|center|MintHCM - Installation - License]]
 
[[File:MintHCM Installation - License.png|900px|thumb|center|MintHCM - Installation - License]]
  
'''3. In a moment another screen with system environment information will appear.'''
+
===== 2 .System Environment Check =====
  
 
[[File:MintHCM4 - Installation - System Environment.png|900px|thumb|center|MintHCM - Installation - System Environment]]
 
[[File:MintHCM4 - Installation - System Environment.png|900px|thumb|center|MintHCM - Installation - System Environment]]
  
'''4. Enter basic database configuration and administrator user data on the next screen.'''
+
===== 3. Database Configuration =====
 +
On this screen, you'll provide essential database configuration details and administrator user data. Follow these steps:
  
If the database and MintHCM '''are on the same server, enter 'localhost'''' in the Host Name field.  
+
'''Host Name:'''
If the database is on a '''different server, enter the hostname or IP address''' of the database server in the Host Name field.
+
* If the database and MintHCM are on the same server, enter 'localhost' in the Host Name field.
 +
* If the database is on a different server, enter the hostname or IP address of the database server in the Host Name field.
 +
<br>
 +
'''Database User:'''
 +
* The MintHCM Database User is set to 'root' by default. If you prefer to use another user, update this field accordingly.
 +
<br>
 +
'''Note:'''
 +
* If you are unsure about the database server's hostname or IP address, consult your server administrator or hosting provider.
 +
* Choosing a secure and unique Database User is recommended for enhanced security.
  
 
[[File:MintHCM4 - Installation - Database configuration.png|900px|thumb|center|MintHCM - Installation - Database configuration]]
 
[[File:MintHCM4 - Installation - Database configuration.png|900px|thumb|center|MintHCM - Installation - Database configuration]]
  
MintHCM Database User is by default set to root. If you want to choose another user, change it here.  
+
Once you've entered the necessary information, proceed to the next step in the installation process.
 +
 
 +
===== 4. ElasticSearch Connection =====
 +
 
 +
Configure your ElasticSearch connection (make sure that it's running) to enable MintHCM to display data in lists and in the Global Search feature.
  
'''5. Set up your ElasticSearch connection. System needs it to displays data in list and in [[Global Search]].'''
 
  
 
[[File:MintHCM4 - Installation - ElasticSearch.png|900px|thumb|center|MintHCM - Installation - ElasticSearch configuration]]
 
[[File:MintHCM4 - Installation - ElasticSearch.png|900px|thumb|center|MintHCM - Installation - ElasticSearch configuration]]
  
'''6. Set up your administrator user name and password, so you can log in MintHCM later.'''
+
===== 5. Site Configuration =====
  
Site URL should be prefilled if not you have to provide Site URL. Usually in SiteURL field you should enter URL from your current browser tab to the „#” sign (characters after the „#” sign should not be entered).
+
* SiteURL (Optional):
Here, you can check '''dummy data'''. The option will install Demo Data on instance. It can be helpfull if you do not want empty system.
+
** Optionally, you can change the prefilled SiteURL field if you decide to run MintHCM in a custom directory. This is useful if MintHCM is not installed in the root directory of your web server.
 +
* Create a username and password for your administrator account.
 +
* Populate with Dummy Data (Optional):
 +
** Decide whether you want your Mint installation to be populated with dummy data for demonstration purposes. This can be helpful for testing and exploring MintHCM features.
  
 
[[File:MintHCM4 - Installation - Site configuration.png|900px|thumb|center|MintHCM - Installation - Site configuration]]
 
[[File:MintHCM4 - Installation - Site configuration.png|900px|thumb|center|MintHCM - Installation - Site configuration]]
  
'''7. If everything was alright with data provided, installation will begin. It may take a while'''
+
After configuring the administrator username and password, proceed to the next step in the installation process.
 +
 
 +
===== 6. Installation =====
 +
 
 +
If all the provided data is correct, the installation process will begin. Please be patient as this may take a few minutes.
 +
 
 +
Note:
 +
* During this phase, MintHCM is configuring and setting up the necessary components. The duration may vary based on server resources and network conditions.
 +
* Avoid interrupting the installation process to ensure a successful setup.
  
 
[[File:MintHCM4 - Installation - Processing.png|900px|thumb|center|MintHCM - Installation - Installation in progress]]
 
[[File:MintHCM4 - Installation - Processing.png|900px|thumb|center|MintHCM - Installation - Installation in progress]]
  
'''8. After installation is completed, you will see the last screen. Among others, it provides information of total time of installation and memory use.'''
+
Once the installation is completed, you will proceed to the next step in the process.
 +
 
 +
===== 7. Completion =====
 +
The installation is now complete, and you can log in as an administrator using the username and password you set up earlier.
  
 
[[File:MintHCM4 - Installation - Finish.png|900px|thumb|center|MintHCM - Installation - Finish]]
 
[[File:MintHCM4 - Installation - Finish.png|900px|thumb|center|MintHCM - Installation - Finish]]
  
After clicking the button ''Go to login'', '''the installation is complete''' and you can log in to your MintHCM instance as an administrator with the username and password you set up earlier.
+
===== 8. Adding Crontab for MintHCM =====
 
+
After completing the installation, it's crucial to set up a Crontab to enable MintHCM to run background tasks, especially for indexing data to ElasticSearch. Follow these steps to add a Crontab entry:
'''9. Adding crontab'''
 
 
 
It's important to set up a '''Crontab''' to allow MintHCM to run background tasks on your server.
 
It's necessary in order to index data to ElasticSearch.
 
Edit your web server user's crontab file after the installation is completed.
 
  
To do so, you have to '''edit your web server user's crontab file'''. You can open it with a command:
+
* Open the Crontab Editor:
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
sudo crontab -e -u www-data (or another actual user)
+
sudo crontab -e -u www-data # Use the actual user if not www-data
 
</syntaxhighlight>
 
</syntaxhighlight>
Now you have to '''add the following line''' to the crontab file:
+
 
 +
* Add the Crontab Entry:
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
*    *    *    *    *    cd /var/www/<dir_to_your_instance>/legacy; php -f cron.php > /dev/null 2>&1
 
*    *    *    *    *    cd /var/www/<dir_to_your_instance>/legacy; php -f cron.php > /dev/null 2>&1
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
This line schedules the execution of the MintHCM background tasks every minute.
 +
 +
* Note:
 +
** Adjust the path /var/www/<dir_to_your_instance>/legacy to the actual path where your MintHCM instance is installed.
 +
** Ensure that the user specified (e.g., www-data) has the necessary permissions to execute the Crontab entry.
 +
After adding the Crontab entry, MintHCM will automatically run background tasks, including data indexing to ElasticSearch.
 +
 +
* Additional Information:
 +
 +
** You can find information about Crontab setup in the Schedulers section of the [[Process:Administration_Guide|Administration panel]] within MintHCM after installation.
 +
 +
* Note for Windows or Other Systems:
  
Information about Crontab edition may be also found in Schedulers in [[Process:Administration_Guide|Administration panel]] of MintHCM after installation.
+
** Windows and other operating systems may have different mechanisms for managing background processes. Refer to the respective documentation for your system.
  
Note that Windows or other systems have different background processes mechanisms.
 
  
 
==Troubleshooting==
 
==Troubleshooting==

Revision as of 10:37, 21 December 2023

Info
Process Name MintHCM Installation Guide
Process Type ⧼ev-Technical Process⧽
Related Processes Installation guide MintHCM v3
Related Modules
MintHCM Installation Guide

Short Description

This guide covers the installation process for MintHCM version 4.x onwards.


For instructions for previous releases please visit MintHCM 3.x Installation Guide

Requirements

Before installing MintHCM, ensure that your system meets the following requirements:

  • Web Server:
    • Linux or Windows machine running Apache2
  • PHP:
    • 7.4 - 8.0
  • Database (one of the following):
    • MySQL 5.7 or 8.0
    • Percona 8.0
    • MariaDB 10
  • ElasticSearch:
    • 7.9


Apache2 Configuration:
  • Required Modules: Rewrite and Headers
  • AllowOverride: Ensure that AllowOverride All is set within the <Directory> directive for MintHCM in your Apache configuration. This allows the use of .htaccess files for additional configuration.

For example:

<VirtualHost *:80>
    DocumentRoot /var/www/minthcm

    <Directory /var/www/minthcm>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    # ... other configurations ...

</VirtualHost>


Browser compatibility

MintHCM offers a user-friendly interface accessible through the following web browsers:

  • Chromium
  • Firefox
  • Edge


While we strive to provide the best user experience on these browsers, Internet Explorer (IE) is not supported. However, you are welcome to test and use it at your discretion.

Getting started

Download MintHCM

Download the latest release of MintHCM zip file from the official website: https://minthcm.org/download/

Copy the zip file to your server

Copy the downloaded zip file to your server using your preferred method (e.g., SCP, FTP).

Unzip the files

Navigate to the directory where you want to install MintHCM and unzip the downloaded file.

cd /path/to/your/MintHCMdirectory
unzip MintHCM.zip
Change file permissions

Adjust file permissions based on your platform's requirements. For Ubuntu Linux with Apache, use the following commands:

cd /path/to/your/MintHCMdirectory
sudo chown -R www-data:www-data .
sudo chmod -R 755 .

Note: Replace www-data:www-data with the actual user and group on your server if they differ from Linux/Apache defaults. This ensures proper ownership and permissions for MintHCM files.

Installation process

Open the Installation Wizard

Open your web browser and enter the following URL to initiate the installation wizard:

 https://my-server-or-domain.com/my-minthcm-directory

The installation wizard will commence automatically, guiding you through the setup process. Follow the on-screen instructions to configure MintHCM for your environment.

1. Accept the License Agreement

On the first screen, you need to accept the license agreement. After that, you can click the "Next" button.

MintHCM - Installation - License
2 .System Environment Check
MintHCM - Installation - System Environment
3. Database Configuration

On this screen, you'll provide essential database configuration details and administrator user data. Follow these steps:

Host Name:

  • If the database and MintHCM are on the same server, enter 'localhost' in the Host Name field.
  • If the database is on a different server, enter the hostname or IP address of the database server in the Host Name field.


Database User:

  • The MintHCM Database User is set to 'root' by default. If you prefer to use another user, update this field accordingly.


Note:

  • If you are unsure about the database server's hostname or IP address, consult your server administrator or hosting provider.
  • Choosing a secure and unique Database User is recommended for enhanced security.
MintHCM - Installation - Database configuration

Once you've entered the necessary information, proceed to the next step in the installation process.

4. ElasticSearch Connection

Configure your ElasticSearch connection (make sure that it's running) to enable MintHCM to display data in lists and in the Global Search feature.


MintHCM - Installation - ElasticSearch configuration
5. Site Configuration
  • SiteURL (Optional):
    • Optionally, you can change the prefilled SiteURL field if you decide to run MintHCM in a custom directory. This is useful if MintHCM is not installed in the root directory of your web server.
  • Create a username and password for your administrator account.
  • Populate with Dummy Data (Optional):
    • Decide whether you want your Mint installation to be populated with dummy data for demonstration purposes. This can be helpful for testing and exploring MintHCM features.
MintHCM - Installation - Site configuration

After configuring the administrator username and password, proceed to the next step in the installation process.

6. Installation

If all the provided data is correct, the installation process will begin. Please be patient as this may take a few minutes.

Note:

  • During this phase, MintHCM is configuring and setting up the necessary components. The duration may vary based on server resources and network conditions.
  • Avoid interrupting the installation process to ensure a successful setup.
MintHCM - Installation - Installation in progress

Once the installation is completed, you will proceed to the next step in the process.

7. Completion

The installation is now complete, and you can log in as an administrator using the username and password you set up earlier.

MintHCM - Installation - Finish
8. Adding Crontab for MintHCM

After completing the installation, it's crucial to set up a Crontab to enable MintHCM to run background tasks, especially for indexing data to ElasticSearch. Follow these steps to add a Crontab entry:

  • Open the Crontab Editor:
sudo crontab -e -u www-data  # Use the actual user if not www-data
  • Add the Crontab Entry:
*    *    *    *    *     cd /var/www/<dir_to_your_instance>/legacy; php -f cron.php > /dev/null 2>&1

This line schedules the execution of the MintHCM background tasks every minute.

  • Note:
    • Adjust the path /var/www/<dir_to_your_instance>/legacy to the actual path where your MintHCM instance is installed.
    • Ensure that the user specified (e.g., www-data) has the necessary permissions to execute the Crontab entry.

After adding the Crontab entry, MintHCM will automatically run background tasks, including data indexing to ElasticSearch.

  • Additional Information:
    • You can find information about Crontab setup in the Schedulers section of the Administration panel within MintHCM after installation.
  • Note for Windows or Other Systems:
    • Windows and other operating systems may have different mechanisms for managing background processes. Refer to the respective documentation for your system.


Troubleshooting

Troubleshooting MintHCM3

Mentioned in other articles