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

Cómo instalar ERPNext en CentOS 8

ERPNiguiente es un marco ERP completamente robusto destinado a pequeñas y medianas empresas. Cubre una amplia variedad de funciones, que incluyen contabilidad, CRM, inventario, ventas, compras, fabricación, proyectos, recursos humanos y nómina, sitio web, comercio electrónico y más, todo lo cual lo hace profundamente adaptable y ampliable.

ERPNext está desarrollado en Python y depende de Frappe Framework. Utiliza Node.js para el front-end, Nginx para el servidor web, Redis para el almacenamiento en caché y MariaDB para la base de datos.

ERPNext es de código abierto bajo la licencia pública general GNU v3.

En este artículo, le mostraremos cómo instalar ERPNext en CentOS 8 en uno de nuestros servidores de alojamiento ERPNext optimizados.

Requisitos previos:

Asegúrese de que su servidor cumpla con los siguientes requisitos.

  • 2 GB de RAM o superior
  • 2 o más núcleos de CPU
  • Instalación nueva de CentOS 8
  • Acceso raíz completo

Preparar y Actualizar el Sistema e Instalar las Dependencias

Inicie sesión en su servidor a través de SSH:

ssh username@server_ip

Antes de comenzar con la instalación de ERPNext, es una buena idea actualizar los paquetes del sistema a sus últimas versiones.

sudo yum update -y

Instale el repositorio de paquetes adicionales:

sudo yum install -y epel-release

Podemos configurar ERPNext en dos entornos, desarrollo y producción. Para el entorno de desarrollo, no habrá no Nginx installed y necesita iniciar ERPNext manualmente. Para un entorno de producción,  Nginx is installed y el proceso será administrado por supervisor . Aprenderá más sobre el supervisor más adelante en este tutorial.

Al instalar en un entorno de producción, debemos asegurarnos de uninstall Apache primero, ya que la secuencia de comandos del instalador configurará Nginx. También se recomienda uninstall MariaDB para evitar conflictos durante la instalación tanto para la producción como para el desarrollo. Para un entorno de desarrollo, es seguro dejar Apache instalado y ejecutándose, ya que Nginx no se instalará.

Para detener y desinstalar Apache (required for production set up only) :

sudo systemctl stop httpd
sudo yum remove -y httpd httpd-tools apr apr-util

Para detener y desinstalar MariaDB (recommended for both development and production setup) :

sudo systemctl stop mariadb
sudo yum remove -y mariadb mariadb-server
sudo rm -rf /var/lib/mysql /etc/my.cnf

Instale los paquetes necesarios junto con MariaDB, Nginx, NodeJS, redis:

sudo yum install -y gcc make git mariadb mariadb-server nginx supervisor python3 python3-devel python2 python2-devel redis nodejs

Instalar el Administrador de paquetes de Yarn:

sudo npm install -g yarn

Deshabilitar SELinux

Para evitar configurar un conjunto de reglas complejo de SELinux, tendríamos que deshabilitarlo. Deshabilitar SELinux en CentOS 7 es una tarea bastante fácil. Puedes hacerlo con un comando:

echo 0 > /selinux/enforce

Como alternativa, puede utilizar el siguiente comando:

setenforce 0

Ahora, verifique el estado nuevamente y asegúrese de que esté deshabilitado.

Tenga en cuenta que esto deshabilitará SELinux solo temporalmente. Si desea deshabilitarlo permanentemente, deberá realizar los siguientes pasos:

Abra el /etc/sysconfig/selinux archivo para editar con un editor de texto de su elección. Usaremos vim en el siguiente ejemplo.

vim /etc/sysconfig/selinux

Una vez que abra el archivo, cambie la siguiente línea:

SELINUX=enforcing

a

SELINUX=disabled

Luego guarde y cierre el archivo.

Instalar ERPNext

Creando ERPNext usuario

Una vez que hayamos instalado los paquetes requeridos podemos comenzar con la instalación de ERPNext.

Necesitaríamos un usuario que estará dedicado a la instancia ERPNext y tendrá acceso sudo:

sudo useradd -m erp -G wheel

La configuración predeterminada de sudo requiere que ingresemos la contraseña cuando emitimos el comando. Puedes evitar eso con:

sudo sed -i 's/^#\s*\(%wheel\s\+ALL=(ALL)\s\+NOPASSWD:\s\+ALL\)/\1/' /etc/sudoers

Necesitamos establecer parámetros de kernel adicionales:

echo "vm.overcommit_memory = 1" | sudo tee -a /etc/sysctl.conf
echo "echo never > /sys/kernel/mm/transparent_hugepage/enabled" | sudo tee -a /etc/rc.d/rc.local
sudo chmod 755 /etc/rc.d/rc.local

Necesitamos hacer un reinicio para que la configuración del kernel pueda tener efecto.

Configurar MariaDB (fork MySQL) para ERPNext

A diferencia de otras aplicaciones ERP, ERPNext admite MariaDB para almacenar la parte persistente de los datos. Previamente instalamos la última versión disponible de MariaDB para CentOS 8 y ahora necesitamos configurarlo para ERPNext.

Cree un archivo de configuración para ERPNext para MariaDB:

cat <<EOF >/etc/my.cnf.d/erpnext.cnf

[mysqld]

innodb-file-format=barracuda innodb-file-per-table=1 innodb-large-prefix=1 character-set-client-handshake =FALSE character-set-server =utf8mb4 collation-server =utf8mb4_unicode_ci

[mysql]

conjunto de caracteres predeterminado =utf8mb4 EOF

Habilite e inicie el servicio MariaDB:

sudo systemctl enable mariadb
sudo systemctl start mariadb

Inicie el script de instalación segura de MariaDB (asegúrese de recordar la contraseña raíz de MariaDB). Además, utilice siempre contraseñas seguras si se le solicita:

sudo mysql_secure_installation

Instalar ERPNext

Instalaremos ERPNext bajo el nuevo usuario que hemos creado, erp.

Cambie al usuario ERPNext y cambie el directorio de trabajo a su directorio de inicio:

su - erp

Instale frappe-bench con pip3 e inicialice la versión 12:

pip3 install --user frappe-bench
bench init frappe-bench --frappe-branch version-12

Cuando finalice la inicialización, recibirá el siguiente mensaje:

SUCCESS: Bench frappe-bench initialized

Con el frappe-bench inicializado podemos crear un nuevo sitio frappe para nuestra instancia ERPNext.

Necesitamos iniciar el servidor de desarrollo frappe:

cd frappe-bench
sed -i '/web:/ s/$/ --noreload/' Procfile
bench start >/tmp/bench_log &

Necesitamos crear un nuevo sitio con nuestro nombre de dominio/subdominio:

bench new-site erp.rosehosting.com

Recibiremos un mensaje para la contraseña de MySQL que hemos ingresado anteriormente. Introduzca la contraseña raíz de MySQL.

Ahora estamos listos para descargar e instalar ERPNext a través de Bench.

Primero descargue la última versión de ERPNext con banco:

bench get-app erpnext --branch version-12

Una vez descargado instalarlo:

bench install-app erpnext

Ahora estamos listos para comenzar y usar ERPNext

Iniciando ERPNext

En la configuración de un entorno de desarrollo, se requiere iniciar la aplicación ERPNext manualmente. La aplicación ERPNext escucha en el puerto 8000.

Desarrollo

su - erp
cd frappe-bench
bench start >/tmp/bench_log &

Ahora puede acceder a su configuración en:

http://[domain]:8000
Login: Administrator
Password: The one that you input during installation

Producción

En algún momento querríamos ERPNext en modo de producción.

Para eso necesitaríamos crear archivos de producción para supervisor y nginx:

su - erp
cd frappe-bench
bench setup supervisor
bench setup nginx

Agregue un enlace de los archivos de configuración recién creados a sus respectivos servicios:

sudo ln -s `pwd`/config/supervisor.conf /etc/supervisord.d/frappe-bench.ini
sudo ln -s `pwd`/config/nginx.conf /etc/nginx/conf.d/frappe-bench.conf

Cambie el propietario del proceso nginx para que sea erp editando /etc/nginx/conf/nginx.conf y cambiando la directiva de usuario a:

user erp erp;

Supervisor es un sistema de control de procesos que le permite monitorear y controlar procesos en sistemas que ejecutan Linux. Cuando el supervisor se está ejecutando, iniciará automáticamente la aplicación en el arranque y manejará las fallas del proceso. El script del instalador configuró automáticamente el supervisor para su aplicación ERPNext.

Ahora puede habilitar e iniciar supervisor y Nginx:

sudo systemctl enable supervisord
sudo systemctl start supervisord
sudo systemctl enable nginx
sudo systemctl start nginx

Ahora puede iniciar sesión en su sitio web de producción without using port 8000 ya que el servidor web Nginx ya está configurado como proxy inverso para el puerto 8000.

Después de iniciar sesión, debería poder finalizar la configuración inicial de su aplicación ERPNext.

Por supuesto, no tiene que instalar ERPNext en CentOS 8 si tienes un VPS ERPNext con nosotros. Simplemente puede pedirle a nuestro equipo de soporte que instale ERPNext en CentOS 8 por usted. Están disponibles las 24 horas del día, los 7 días de la semana y podrán ayudarlo con la instalación.

PD . Si disfrutó leyendo esta publicación de blog sobre cómo instalar ERPNext en CentOS 8, siéntase libre de compartirla en las redes sociales utilizando los accesos directos a continuación, o simplemente deje un comentario. Gracias.


Cent OS
  1. Cómo instalar Vagrant en CentOS 7

  2. Cómo instalar Gitea en CentOS 8

  3. Cómo instalar Memcached en CentOS 8

  4. Cómo instalar ownCloud en CentOS 8

  5. Cómo instalar ERPNext en CentOS 7

Cómo instalar Jenkins en CentOS 8

Cómo instalar Zoom en CentOS 8

Cómo instalar Nethogs en CentOS

Cómo instalar Yourls en CentOS 8

Cómo instalar SuiteCRM en CentOS 8

Cómo instalar Minikube en CentOS 8