GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar Flectra en CentOS 8 con Nginx como proxy inverso

Flectra es una herramienta de gestión empresarial de código abierto, poderosa y personalizable que lo ayuda a hacer crecer su negocio a través de su poderoso diseño modular que cubre todos los aspectos esenciales de la mayoría de las empresas.

Flectra integra las capacidades de los sistemas CRM y ERP en un solo paquete. Flectra lo ayuda a modificar y adaptar su sistema para satisfacer las necesidades únicas de su negocio. Esto lo convierte en el paquete de aplicaciones empresariales definitivo que le brinda una plataforma de gestión empresarial escalable que le brinda toda la libertad para hacer que el software funcione para usted y la configuración de su empresa.

Flectra ofrece varias características que cubren casi todos los casos de uso, incluidos comercio electrónico, contabilidad, gestión de ventas, sitios web, marketing, gestión de inventario, MRP, informes, hojas de tiempo y mucho más.

En este tutorial, le mostraremos cómo instalar Flectra en un VPS CentOS 8 utilizando Nginx como proxy inverso.

Requisitos

  • Un VPS CentOS 8 con acceso raíz habilitado o un usuario con privilegios sudo.
  • Un mínimo de 2 GB de RAM. Para ello, utilizaremos nuestro plan SSD 2 VPS.

Paso 1:Primeros pasos

Primero, deberá iniciar sesión en su CentOS 8 VPS a través de SSH como usuario raíz:

ssh root@IP_ADDRESS -p PORT_NUMBER

Cambie los valores en rojo a los valores correctos para su VPS.

A continuación, ejecute el siguiente comando para actualizar todos los paquetes instalados en su VPS:

dnf update -y

Una vez que todos los paquetes estén actualizados, es necesario deshabilitar SELinux en su sistema. Puede desactivarlo editando el archivo de configuración que se encuentra en /etc/selinux/config :

nano /etc/selinux/config

Cambie la siguiente línea:

SELINUX=disabled

Guarde y cierre el archivo, luego reinicie su servidor para aplicar los cambios.

Paso 2:Instale las dependencias requeridas

A continuación, deberá instalar Python y otras dependencias de Flectra en su sistema. Puede instalarlos todos de una sola vez ejecutando el siguiente comando:

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

Una vez que todos los paquetes estén instalados, ejecute el siguiente comando para instalar Node.js módulo:

npm install -g less

A continuación, también deberá instalar el wkhtmltopdf paquete en su sistema (representa documentos html como PDF) Puede descargarlo con el siguiente comando:

wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm

A continuación, instale el archivo descargado con el siguiente comando:

dnf localinstall wkhtmltox-0.12.5-1.centos7.x86_64.rpm

Una vez que haya terminado, puede continuar con el siguiente paso.

Paso 3:Instalar PostgreSQL

A continuación, deberá instalar PostgreSQL para que funcione como back-end de la base de datos. Puede instalarlo con el siguiente comando:

dnf install -y postgresql-server

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

postgresql-setup --initdb --unit postgresql

Deberías obtener el siguiente resultado:

 * Initializing database in '/var/lib/pgsql/data'
 * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log

A continuación, inicie el servicio PostgreSQL y habilítelo para que se inicie en el arranque con los siguientes comandos:

systemctl start postgresql
systemctl enable postgresql

A continuación, inicie sesión en el shell de PostgreSQL y cree un nuevo usuario de PostgreSQL con el siguiente comando. Estamos usando el nombre flectra , pero puedes usar el nombre que quieras:

su - postgres -c "createuser -s flectra"

Paso 4:Instalar Flectra

Finalmente, después de configurar todo el software requerido, ahora podemos instalar Flectra en nuestro sistema. Cree un usuario separado para Flectra usando el siguiente comando. Estamos usando el nombre flectra porque los nombres entre este y PostgreSQL tienen que coincidir. Asegúrese de que el nombre de usuario que elija sea el mismo que el usuario de PostgreSQL que creó anteriormente:

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

Luego 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

Después de eso, cree un entorno virtual para Flectra, lo llamaremos flectra-venv , pero puedes usar el nombre que quieras:

python3 -m venv flectra-venv

Ahora, active el entorno virtual con el siguiente comando:

source flectra-venv/bin/activate

Luego, instale todos los módulos de Python con el siguiente comando. Python leerá el archivo e instalará todo lo que Flectra necesita:

pip3 install -r flectra/requirements.txt

Una vez que todos los módulos estén instalados, desactive el entorno virtual con el siguiente comando:

deactivate

Finalmente, salga del usuario de Flectra usando el siguiente comando:

exit

Paso 5:Configurar Flectra

Flectra ya está instalado, pero todavía tenemos que configurarlo. Primero, deberá crear varios directorios para complementos, archivos de configuración y registros de Flectra. Puede crearlos con el siguiente comando. Elegimos estas ubicaciones comunes, pero puede crear estas carpetas y archivos en cualquier lugar que desee:

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

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

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

Una vez hecho esto, cree un archivo de configuración de Flectra con el siguiente comando:

nano /etc/flectra/flectra.conf

Agregue las siguientes líneas:cambie el admin_passwd campo para contener la contraseña que desea utilizar para la cuenta de administrador. Además, cambie las rutas de los archivos/carpetas si elige ubicaciones diferentes a las de este tutorial:

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

Guarde y cierre el archivo cuando haya terminado.

Paso 6:Cree un archivo Systemd para Flectra

A continuación, cree un archivo de servicio systemd para que Flectra administre el servicio Flectra.

nano /etc/systemd/system/flectra.service

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

[Install]
WantedBy=multi-user.target

Guarde y cierre el archivo una vez que haya terminado. Luego, vuelva a cargar el demonio systemd con el siguiente comando. Esto es necesario para que systemd pueda reconocer y aceptar el servicio recién agregado:

systemctl daemon-reload

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

systemctl start flectra
systemctl enable flectra

También puedes verificar el estado de tu servicio Flectra con el siguiente comando:

systemctl status flectra

Deberías obtener el siguiente resultado:

● flectra.service - flectra
   Loaded: loaded (/etc/systemd/system/flectra.service; disabled; vendor preset: disabled)
   Active: active (running) since Sun 2020-06-28 03:23:58 EDT; 7s ago
 Main PID: 25512 (python3)
    Tasks: 4 (limit: 12537)
   Memory: 90.8M
   CGroup: /system.slice/flectra.service
           └─25512 /opt/flectra/flectra-venv/bin/python3 /opt/flectra/flectra/flectra-bin -c /etc/flectra/flectra.conf

Jun 28 03:23:58 centos8 systemd[1]: Started flectra.
Jun 28 03:24:00 centos8 flectra[25512]: 2020-06-28 07:24:00,365 25512 INFO ? flectra: Flectra version 1.7
Jun 28 03:24:00 centos8 flectra[25512]: 2020-06-28 07:24:00,368 25512 INFO ? flectra: Using configuration file at /etc/flectra/flectra.conf
Jun 28 03:24:00 centos8 flectra[25512]: 2020-06-28 07:24:00,368 25512 INFO ? flectra: addons paths: ['/opt/flectra/.local/share/Flectra/addons>
Jun 28 03:24:00 centos8 flectra[25512]: 2020-06-28 07:24:00,369 25512 INFO ? flectra: database: flectra@default:default
Jun 28 03:24:00 centos8 flectra[25512]: 2020-06-28 07:24:00,495 25512 INFO ? flectra.service.server: HTTP service (werkzeug) running on centos>
Jun 28 03:24:00 centos8 flectra[25512]: 2020-06-28 07:24:00,719 25512 INFO ? flectra.addons.base.ir.ir_actions_report: Will use the Wkhtmltopd>

Ahora Flectra se está ejecutando y escuchando en el puerto 7073. Puede verificarlo con el siguiente comando:

netstat -plntu | grep 7073

Debería ver el siguiente resultado:

tcp        0      0 0.0.0.0:7073            0.0.0.0:*               LISTEN      25967/python3       

Paso 6:Configure Nginx como proxy inverso para Flectra

Su instalación de Flectra ahora está completa y configurada, pero actualmente debe usar la dirección IP de su VPS seguida del puerto 7073 para acceder a él. Si bien eso funciona, el caso de uso habitual es querer que sea accesible a través de un nombre de dominio sin necesidad de un número de puerto. Por eso, es una buena idea configurar Nginx como un proxy inverso para servir a Flectra a través del puerto 80.

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

dnf install nginx -y

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

systemctl start nginx 
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

Agregue las siguientes líneas:

#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;
}

Asegúrate de reemplazar flectra.example.com con el nombre de su nombre de dominio registrado. Guarde y cierre el archivo cuando haya terminado. Luego, reinicie el servicio Nginx para aplicar los cambios:

systemctl restart nginx

Paso 7:Acceda a la interfaz web de Flectra

En este punto, Flectra está instalado y configurado, y ahora Nginx lo sirve a través de un proxy inverso. Ahora, abra su navegador web y escriba la URL http://flectra.example.com (por supuesto, su dominio será diferente a este). Será redirigido a la siguiente página de configuración:

Proporcione su contraseña maestra, detalles de la base de datos, correo electrónico y contraseña y haga clic en Crear base de datos botón. Luego será redirigido al tablero de Flectra, como se muestra a continuación:

¡Eso es todo al respecto! Ahora puede instalar los módulos que mejor se adapten a su negocio y ser productivo con Flectra.

Si bien este artículo le permite instalar Flectra por su cuenta, no tiene que instalar Flectra en CentOS 8 si usa uno de nuestros servicios de alojamiento VPS de Flectra, en cuyo caso simplemente puede pedirle a nuestro equipo de administradores expertos de Linux que instale y configure Flectra para ti. Nuestro equipo de soporte totalmente administrado está disponible las 24 horas, los 7 días de la semana y se ocupará de su solicitud de inmediato, junto con cualquier otra cosa que pueda necesitar.

PD . Si le gustó esta publicación sobre cómo instalar Flectra en CentOS 8, compártala con sus amigos a través de las redes sociales utilizando los accesos directos para compartir a continuación, o simplemente deje una respuesta en la sección de comentarios. Gracias.


Cent OS
  1. Cómo instalar phpMyAdmin con Nginx en CentOS 7 / RHEL 7

  2. Cómo instalar Odoo 11 en CentOS 7 con Nginx como proxy inverso

  3. Cómo instalar Odoo 14 en CentOS 8 con Nginx como proxy inverso

  4. Cómo instalar Flectra en Ubuntu 20.04 con Nginx como proxy inverso

  5. Cómo instalar Odoo 12 en Ubuntu 18.04 con Nginx como proxy inverso

Cómo instalar Redmine 3 con Nginx en CentOS 7

Cómo instalar el software de gestión empresarial Flectra con Nginx en CentOS 8

Cómo instalar ReactJS con proxy Nginx en CentOS 8

Cómo instalar Nginx con ngx_pagespeed en CentOS

Cómo instalar Nginx con PHP-FastCGI en CentOS 6

Cómo instalar Magento con Nginx en CentOS 7