Cómo instalar Flectra en CentOS 8

En este tutorial, le mostraremos cómo instalar Flectra en CentOS 8. Para aquellos de ustedes que no lo sabían, Flectra es un sistema de software gratuito y de código abierto, CRM (gestión de relaciones con el cliente) y ERP (planificación de recursos empresariales). que proporciona mucha flexibilidad y personalización que le permite satisfacer las necesidades únicas de su negocio. En términos simples, Flectra le brinda una plataforma integral para que pueda modificarla o configurarla fácilmente según sus requisitos. Flectra ofrece muchas funciones, como contabilidad, comercio electrónico, gestión de inventario, marketing, gestión de proyectos, CRM, informes, gestión de licencias y muchas más.

Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que está ejecutando en la cuenta de root, de lo contrario, es posible que deba agregar ‘sudo‘a los comandos para obtener privilegios de root. Le mostraré paso a paso la instalación del software ERP y CRM de código abierto Flectra en CentOS 8.

Instalar Flectra en CentOS 8

Paso 1. Primero, comencemos asegurándonos de que su sistema esté actualizado.

sudo dnf clean all
sudo dnf update

Paso 2. Configure SELinux en el sistema CentOS.

Recomendamos deshabilitar SELinux en su sistema. Puede deshabilitarlo editando el archivo /etc/selinux/config:

nano /etc/selinux/config

Cambie la siguiente línea:

SELINUX=disabled

Paso 3. Instalar Requerir dependencias.

Ahora instalamos las dependencias de Flectra en su sistema. Puede instalarlos todos de una vez ejecutando el siguiente comando:

sudo dnf install python36 python36-devel git gcc wget nodejs libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel

A continuación, ejecute el siguiente comando para instalar el módulo Node.js:

npm install -g less

También es necesario instalar el wkhtmltopdf paquete en su sistema:

wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox-0.12.6-1.centos8.x86_64.rpm
sudo dnf localinstall wkhtmltox-0.12.6-1.centos7.x86_64.rpm

Paso 4. Instalar PostgreSQL.

Ahora instalamos la base de datos PostgreSQL usando los siguientes comandos:

sudo dnf install postgresql-server

Una vez instalado el servidor PostgreSQL, inicialice la base de datos con el siguiente comando:

postgresql-setup --initdb --unit postgresql

A continuación, inicie el servicio PostgreSQL y habilítelo para que se inicie al reiniciar el sistema con el siguiente comando:

sudo systemctl start postgresql
sudo systemctl enable postgresql

Paso 5. Instalación Instale Flectra en CentOS 8.

Primero, cree un usuario separado para Flectra. Puedes crearlo usando el siguiente comando:

useradd -m -U -r -d /opt/flectra -s /bin/bash flectra

Una vez hecho esto, inicie sesión con el usuario de Flectra y descargue Flectra del repositorio de Git:

su - flectra
git clone --depth=1 --branch=1.0 https://gitlab.com/flectra-hq/flectra.git flectra

Luego, cree un entorno virtual para Flectra:

python3 -m venv my-flectra

A continuación, active el entorno virtual con el siguiente comando:

source my-flectra/bin/activate

Luego, instale todos los módulos de Python ejecutando el siguiente comando a continuación:

pip3 install -r flectra/requirements.txt

Cuando todos los módulos necesarios estén instalados, desactive el entorno virtual y salga con el siguiente comando:

deactivate
exit

Paso 6. Configuración de Flectra.

Ahora creamos directorios para la configuración, los ejecutables y los archivos de registro de Flectra:

mkdir /opt/flectra/flectra-custom-addons
mkdir /var/log/flectra
mkdir /etc/flectra
touch /var/log/flectra/flectra.log

Cambie el propietario de los directorios recién creados a usuario de Flectra:

chown -R flectra:flectra /opt/flectra/flectra-custom-addons
chown -R flectra:flectra /var/log/flectra/
chown -R flectra:flectra /etc/flectra

A continuación, editamos el archivo de configuración de Flectra:

nano /etc/flectra/flectra.conf

Agrega las siguientes líneas:

[options]
admin_passwd = your-strong-password-flectra
db_host = False
db_port = False
db_user = flectra
db_password = False
logfile = /var/log/flectra/flectra.log
logrotate = True
proxy_mode = True
addons_path = /opt/flectra/flectra/addons, /opt/flectra/flectra-custom-addons

Paso 7. Cree un servicio Systemd para Flectra.

Para habilitar el inicio automático de Flectra en el inicio de Linux, necesitamos crear un systemd servicio para Flectra:

nano /etc/systemd/system/flectra.service

Agrega las siguientes líneas:

[Unit]
Description=flectra
#Requires=postgresql-10.6.service
#After=network.target postgresql-10.6.service

[Service]
Type=simple
SyslogIdentifier=flectra
PermissionsStartOnly=true
User=flectra
Group=flectra
ExecStart=/opt/flectra/my-flectra/bin/python3 /opt/flectra/flectra/flectra-bin -c /etc/flectra/flectra.conf
StandardOutput=journal+console

[Install]
WantedBy=multi-user.target

Save y close, recarga el systemd daemon y después de la recarga, inicie y habilite el servicio Flectra:

sudo systemctl daemon-reload
sudo systemctl start flectra
sudo systemctl enable flectra

Paso 8. Configure Nginx para Flectra.

Primero, instale el servidor web Nginx usando el siguiente comando:

sudo dnf install nginx

Una vez instalado, inicie el servicio Nginx y habilítelo para que se inicie al reiniciar el sistema:

sudo systemctl start nginx 
sudo systemctl enable nginx

A continuación, cree un nuevo archivo de configuración de host virtual Nginx para Flectra:

nano /etc/nginx/conf.d/flectra.conf

Agrega las siguientes líneas:

#flectra server
upstream flectra {
server 127.0.0.1:7073;
}

server {
listen 80;
server_name flectra.idroot.us;

proxy_read_timeout 720s;
proxy_connect_timeout 720s;
proxy_send_timeout 720s;

# Add Headers for flectra proxy mode
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;

# log
access_log /var/log/nginx/flectra.access.log;
error_log /var/log/nginx/flectra.error.log;

# Redirect requests to flectra backend server
location / {
proxy_redirect off;
proxy_pass https://flectra;
}

# common gzip
gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
gzip on;
}

Save y close el archivo cuando haya terminado. Luego, reinicie el servicio Nginx para aplicar los cambios:

sudo systemctl restart nginx

Paso 9. Acceder a la interfaz web de Flectra.

Para acceder a la interfaz web de Flectra, abra su navegador web favorito y busque la URL https://flectra.idroot.us, Será recibido por la página de configuración de la base de datos:

¡Felicidades! Ha instalado correctamente Flectra. Gracias por usar este tutorial para instalar el software ERP y CRM de código abierto Flectra en sistemas CentOS 8. Para obtener ayuda adicional o información útil, le recomendamos que consulte el sitio web oficial de Flectra.