Cómo instalar Flectra en Ubuntu • Sitio web para estudiantes

Tutoriales marzo 19, 2021

En este post veremos cómo instalar Flectra CRM | ERP en Ubuntu 20.04 | 18.04.

Flectra es un CRM de código abierto | Sistema ERP que se ejecuta en Python con datos de backend de PostgreSQL para impulsar su negocio al siguiente nivel.

Ya sea que sea una empresa pequeña o mediana, Flectra viene con una suite o aplicaciones modulares, que incluyen inventario, recursos humanos, CMS, POS, proyectos, etc., que lo ayudarán a administrar una empresa exitosa hoy de manera asequible.

Es una alternativa de código abierto a los sistemas CRM y HRP populares por poco o sin costo para usted. Flectra es un buen lugar para comenzar cuando busca una solución de gestión de relaciones con el cliente o una plataforma ERP.

Para obtener más información sobre Flectra, consulte su página principal.

Para comenzar a instalar Flectra en Ubuntu, sigue los pasos a continuación:

Instalar requiere dependencias

Para instalar Flectra en Ubuntu, necesitará instalar paquetes de Python y otras dependencias. Para hacer eso, inicie sesión en la terminal y ejecute los siguientes comandos:

sudo apt update
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

Cuando haya terminado de ejecutar los comandos anteriores, continúe a continuación para descargar e instalar wkhtmltopdf conjunto de herramientas.
Para hacer eso, ejecute los siguientes comandos, descárguelo e instálelo.

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

Después de eso, continúe a continuación para el siguiente paso.

Instalar PostgreSQL

Flectra requiere que PostgreSQL almacene su contenido en la base de datos. Para instalar PostgreSQL en Ubuntu, simplemente ejecute los siguientes comandos:

sudo apt install postgresql

Después de instalar PostgreSQL, es una buena idea crear / cambiar la contraseña de usuario de PostgreSQL predeterminada … Ejecute los siguientes comandos para crear / cambiar la contraseña de usuario en el shell bash y no en el shell interactivo de PostgreSQL.

Establecer contraseña para el usuario de Linux (postgres)

sudo passwd postgres

Se le debe solicitar que cree una nueva contraseña de Linux para el usuario de postgres.

Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully

Después de instalar PostgreSQL, ejecute los siguientes comandos para configurar un usuario de base de datos para Flectra. Utilice la utilidad de base de datos PostgreSQL para crear el usuario.

su - postgres -c "createuser -s flectra"

Instalar Flectra

Ahora que ha instalado las dependencias necesarias y PostgreSQL, sigue los pasos a continuación para instalar y configurar Flectra.

Primero, cree una nueva cuenta del sistema llamada Flectra. Luego ejecute el segundo comando para crear una contraseña para la cuenta de usuario de flectra.

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

Después de eso, use el usuario de Flectra para descargar los paquetes de Flectra.

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

Una vez que se descargan los paquetes, ejecute los siguientes comandos para crear un entorno virtual de Python.

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

Después de activar el entorno virtual de Python, ejecute los siguientes comandos para abrir el archivo Requirement.txt y actualice la línea resaltada a continuación a la versión de Python instalada en Ubuntu.

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'

Actualice a las líneas anteriores si es diferente, guarde la salida del archivo requirements.txt.

Entonces ejecuta estos comandos

pip3 install wheel
pip3 install -r flectra/requirements.txt

Cuando haya terminado, desactive el entorno virtual y salga.

deactivate
exit

Configurar Flectra

En este punto, los paquetes de Flectra deben descargarse y configurarse. Para completar la configuración, ejecute los siguientes comandos para crear directorios que admitan la instalación de Flectra.

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, asegúrese de que el usuario de flectra sea propietario 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

Después de eso, abra el archivo de configuración de Flectra

sudo nano /etc/flectra/flectra.conf

Luego agregue las líneas a continuación y guarde.

[options]
admin_passwd = type_your_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

Finalmente, ejecute los siguientes comandos para crear un servicio systemd para controlar cómo se inicia, detiene y habilita Flectra. Ejecute los siguientes comandos para crear el archivo de servicio.

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

Luego agregue las líneas a continuación en el archivo y guárdelo.

[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

Cuando haya terminado, vuelva a cargar systemd e inicie el servicio Flectra.

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

Para verificar que Flectra se esté ejecutando, ejecute los siguientes comandos:

sudo systemctl status flectra

Eso debería mostrar líneas similares a las que se muestran a continuación:

flectra.service - flectra
     Loaded: loaded (/etc/systemd/system/flectra.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2021-03-18 19:39:57 CDT; 12s ago
   Main PID: 35996 (python3)
      Tasks: 4 (limit: 4654)
     Memory: 74.7M
     CGroup: /system.slice/flectra.service
             └─35996 /opt/flectra/flectra-venv/bin/python3 /opt/flectra/flectra/flectra-bin -c /etc/flectra/>

Mar 18 19:39:57 ubuntu2004 systemd[1]: Started flectra.

Flectra debería ejecutarse en el puerto 7073.

http://localhost:7073

Debería ser redirigido al asistente de configuración de Flectra. Ingrese la contraseña maestra del archivo de configuración anterior, el nombre de la base de datos, la dirección de correo electrónico del administrador y la contraseña del administrador.

Eso debería permitirle entrar. Sin embargo, Flectra funciona muy bien con un servidor web. Por lo tanto, es posible que deba instalar el proxy Nginx para usar el portal web de Flectra.

Instalar Nginx

Instale el servidor web Nginx ejecutando los siguientes comandos:

sudo apt install nginx

Luego cree un archivo de host virtual para Flectra.

sudo nano /etc/nginx/sites-available/example.conf

Copie y pegue las líneas a continuación en el archivo y guárdelo.

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

server {
   listen 80;
   server_name flectra.example.com;

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 http://flectra;
 }

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

Habilite el sitio y reinicie Nginx

sudo ln -s /etc/nginx/sites-available/example.conf /etc/nginx/sites-enabled/
sudo systemctl restart nginx

Ahora debería poder acceder al portal utilizando el nombre de host definido en Nginx.

Conclusión:

En este tutorial hemos visto cómo instalar y configurar Flectra en Ubuntu 20.04 | 18.04. Si encuentra algún error arriba, utilice el formulario a continuación para informar.

También te puede gustar la publicación a continuación: