Cómo instalar Flectra en Ubuntu 20.04 LTS

En este tutorial, le mostraremos cómo instalar Flectra en Ubuntu 20.04 LTS. Para aquellos que no lo sabían, Flectra es un sistema de software CRM (gestión de relaciones con el cliente) y ERP (planificación de recursos empresariales) gratuito y de código abierto que proporciona mucha flexibilidad y personalización que le permite satisfacer las necesidades únicas de tu negocio. Ya sea que sea una empresa pequeña o mediana, Flectra viene con un conjunto modular de aplicaciones, que incluyen inventario, recursos humanos, CMS, POS, proyectos, etc., que lo ayudarán a administrar un negocio exitoso hoy de manera asequible.

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 CRM y ERP de código abierto Flectra en Ubuntu 20.04 (Focal Fossa). Puede seguir las mismas instrucciones para Ubuntu 18.04, 16.04 y cualquier otra distribución basada en Debian como Linux Mint.

Instale Flectra en Ubuntu 20.04 LTS Focal Fossa

Paso 1. Primero, asegúrese de que todos los paquetes de su sistema estén actualizados ejecutando lo siguiente apt comandos en la terminal.

sudo apt update
sudo apt upgrade

Paso 2. Instalar Requerir dependencias.

Puede instalar todos los requisitos de ellos usando el siguiente comando:

sudo apt install gcc python3-venv build-essential python3-pillow python3-wheel python3-lxml python3-dev python3-pip python3-setuptools npm nodejs git gdebi libldap2-dev libsasl2-dev libxml2-dev libxslt1-dev libjpeg-dev libpq-dev

Paso 3. Instalación de Wkhtmltopdf.

Deberá descargar e instalar la herramienta wkhtmltopdf en su sistema ejecutando los siguientes comandos:

cd /tmp
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
sudo apt install ./wkhtmltox_0.12.5-1.bionic_amd64.deb

Paso 4. Instalar PostgreSQL.

Flectra requiere PostgreSQL para almacenar sus datos en una base de datos. Para instalar PostgreSQL en Ubuntu, ejecute los siguientes comandos:

sudo apt install postgresql

Una vez hecho esto, use la utilidad PostgreSQL y cree un usuario para Flectra con el siguiente comando. Nombramos a nuestro usuario flectra, pero puedes usar el nombre que quieras:

su - postgres -c "createuser -s flectra"

Paso 5. Instalación Instale Flectra en Ubuntu 20.04.

Primero para instalar Flectra, cree una nueva cuenta de usuario del sistema llamada flectra usando el siguiente comando:

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

Luego, descargue los paquetes de Flectra del repositorio oficial de Git:

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

Después de eso, cree un entorno virtual Flectra con el siguiente comando:

python3 -m venv flectra-venv
source flectra-venv/bin/activate

A continuación, ejecute los siguientes comandos para abrir el archivo requirements.txt:

nano flectra/requirements.txt

Confirme que estas líneas están en el archivo:

psycopg2==2.8.5; sys_platform != 'win32'
psycopg2==2.8.5; sys_platform == 'win32'

Save y close el archivo y luego instale el wheel módulo con el siguiente comando:

pip3 install wheel
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. Configure Flectra.

Necesitamos crear una estructura de directorio para que Flectra almacene complementos, archivos de configuración y registros. Podemos crearlo con el siguiente comando:

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

A continuación, cambie la propiedad de los directorios anteriores:

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

Ahora, abra el archivo de configuración de Flectra:

sudo nano /etc/flectra/flectra.conf

Agregue el siguiente archivo:

[options]
admin_passwd = your_stronge_password_here
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 archivo de servicio Systemd para Flectra.

Ahora creamos un systemd archivo de servicio para gestionar el servicio Flectra. Cree un nuevo archivo de servicio usando este comando:

sudo nano /etc/systemd/system/flectra.service

Luego, agregue las líneas a continuación en el archivo y guarde:

[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/flectra-venv/bin/python3 /opt/flectra/flectra/flectra-bin -c /etc/flectra/flectra.conf
StandardOutput=journal+console

[Install]
WantedBy=multi-user.target

A continuación, vuelva a cargar 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 como proxy inverso para Flectra.

Ahora instale el servidor web Nginx usando el siguiente comando:

sudo apt install nginx

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

sudo nano /etc/nginx/sites-available/example.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://localhost:7073;
 }

 # 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, luego active el archivo de host virtual Nginx usando el siguiente comando:

sudo ln -s /etc/nginx/sites-available/example.conf /etc/nginx/sites-enabled/
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 CRM y ERP de código abierto Flectra en su sistema Ubuntu 20.04 LTS Focal Fossa. Para obtener ayuda adicional o información útil, le recomendamos que consulte el sitio web oficial de Flectra.