Búsqueda de sitios web

Instale ERPNext ERP en Ubuntu 22.04 (Jammy Jellyfish)


ERPNext es un sistema ERP simple pero gratuito y de código abierto escrito utilizando el marco Frappe, un marco de aplicación web completo en Python y JavaScript. En esta guía, cubriremos Cómo instalar el sistema ERP ERPNext en Ubuntu 22.04 Linux. ERPNext es un sistema ERP listo para empresas con muchas funciones que tiene buenas características como:

  • Gerencia de Contabilidad
  • La gestión del inventario
  • Administración de manufactura
  • Sistema de gestión de relaciones con el cliente.
  • Gestión de ventas
  • Gestión de compras
  • Gestión de proyectos
  • Sistema de gestión de recursos humanos y más.

El sistema ERPNext ERP es apto tanto para pequeñas como para medianas empresas. Viene con una interfaz web bien diseñada con todas las funcionalidades de un sistema ERP.

Para Debian, utilice: Instalar el sistema ERP ERPNext en Debian

La mayoría de los ERP pueden funcionar lentamente después de la instalación. Por ejemplo, está esperando mucho tiempo para recibir los resultados del informe o lleva demasiado tiempo procesar los datos durante la carga. Suele ser el caso, pero puedes solucionarlo rápidamente ajustando el servidor u optimizando la base de datos.

Requisitos previos para la configuración de ERPNext:

  • Sistema Linux Ubuntu 22.04 (Jammy Jellyfish) actualizado
  • Un usuario con privilegios sudo
  • Pitón 3.10+
  • Servidor de base de datos MariaDB
  • Nodejs, Nginx, hilo, redis, wkhtmltopdf

Instale ERPNext en Ubuntu 22.04 (Jammy Jellyfish)

Comencemos la instalación de ERPNext asegurándonos de que nuestro sistema esté actualizado:

sudo apt update
sudo apt -y upgrade

Se recomienda reiniciar su sistema cada vez que actualice:

[ -f /var/run/reboot-required ] && sudo reboot -f

Paso 1: Instale las herramientas Python y wkhtmltopdf

Inicie el proceso de instalación asegurándose de que todos los paquetes de compilación de Python necesarios para compilar y configurar ERPNext estén instalados.

Instale Python 3.10 en su sistema Ubuntu:

sudo apt install git python3 python3-dev python3-pip python3-venv

Instale otras utilidades necesarias.

sudo apt update
sudo apt -y install vim libffi-dev xvfb libfontconfig libssl-dev wkhtmltopdf  redis-server

Paso 2: instale Redis y Node.js

Para instalar Redis y Node.js en Ubuntu 22.04, ejecute los comandos:

sudo curl --silent --location https://deb.nodesource.com/setup_16.x | sudo bash -
sudo apt -y install gcc g++ make nodejs redis-server
sudo npm install -g yarn

Paso 3: Instale el servidor de bases de datos Nginx y MariaDB

El siguiente paso es Nginx y MariaDB para servir ERPNext y almacenar datos de bases de datos respectivamente.

Instale Nginx usando:

sudo apt -y install nginx

Para la instalación del servidor MariaDB en Ubuntu:

sudo apt install mariadb-server -y

Asegúrese de tener la siguiente configuración para el cliente mysqld y mysql tal como se proporciona:

$ sudo vim /etc/mysql/mariadb.conf.d/50-server.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

$ sudo vim /etc/mysql/mariadb.conf.d/50-client.cnf
[client]
default-character-set = utf8mb4

Comentar otras líneas del conjunto de caracteres.

sed -i '/character-set-server/s/^/#/g' /etc/mysql/mariadb.conf.d/50-server.cnf
sed -i '/collation-server/s/^/#/g' /etc/mysql/mariadb.conf.d/50-server.cnf

Después de la instalación del servidor de base de datos MariaDB, debe crear una base de datos para el usuario de erpnext.

sudo systemctl restart mariadb

Contraseña raíz del servidor de base de datos segura

$ sudo mysql_secure_installation
Set root password? [Y/n] y
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

Paso 4: Instale Bench y ERPNext

Un banco es una herramienta que se utiliza para instalar y administrar ERPNext en su sistema Ubuntu. Crearemos un usuario que ejecutará el sistema ERPNext y luego configuraremos el sistema.

sudo useradd -m -s /bin/bash erpnext
sudo passwd erpnext
sudo usermod -aG sudo erpnext

Actualiza tu RUTA.

$ sudo su - erpnext
tee -a ~/.bashrc<<EOF
PATH=\$PATH:~/.local/bin/
EOF

$ source ~/.bashrc

Cree un directorio para la configuración de ERPNext y otorgue al usuario erpnext permisos de lectura y escritura en el directorio:

sudo mkdir /srv/bench
sudo chown -R erpnext /srv/bench

Luego cambie al usuario erpnext e instale la aplicación:

cd /srv/bench

Ahora instale el banco usando el comando pip:

sudo pip3 install frappe-bench

Confirme la instalación del banco comprobando la versión.

$ bench --version
5.16.2

El siguiente paso es inicializar el directorio del banco con frappe framework instalado:

cd /srv/bench
bench init frappe-bench

Rama específica:

 bench init --frappe-branch version-14 frappe-bench

Un resultado de muestra es:

.......
Production mode
✔ Built js/moment-bundle.min.js
✔ Built js/libs.min.js

Building frappe assets...

✔ Built js/checkout.min.js
✔ Built js/dialog.min.js
✔ Built js/social.min.js
✔ Built js/web_form.min.js
✔ Built js/list.min.js
✔ Built js/chat.js
Browserslist: caniuse-lite is outdated. Please run next command `yarn upgrade caniuse-lite browserslist`
✔ Built css/tailwind.css
✔ Built js/desk.min.js
✔ Built css/frappe-rtl.css
✔ Built css/printview.css
✔ Built js/barcode_scanner.min.js
✔ Built js/bootstrap-4-web.min.js
✔ Built js/frappe-recorder.min.js
✔ Built css/list.min.css
✔ Built css/report.min.css
✔ Built frappe/css/email.css
✔ Built js/frappe-web.min.js
✔ Built css/frappe-chat-web.css
✔ Built css/form.min.css
✔ Built js/control.min.js
✔ Built js/form.min.js
✔ Built css/web_form.css
✔ Built css/desk.min.css
✔ Built css/frappe-web-b4.css
✔ Built js/data_import_tools.min.js
✔ Built js/report.min.js
✨  Done in 100.386s
Done in 101.55s.
INFO:bench.utils:setting up backups
SUCCESS: Bench frappe-bench initialized

Cree un nuevo sitio Frappe, no olvide reemplazar erp.computingforgeeks.com con el suyo propio. dominio.

$ cd frappe-bench
$ bench new-site  erp.computingforgeeks.com 
MySQL root password: 

Installing frappe...
Updating DocTypes for frappe        : [========================================]
Updating country info               : [========================================]
Set Administrator password: <input-admin-pass>
Re-enter Administrator password: <confirm-admin-pass>
*** Scheduler is disabled ***

El comando anterior le pedirá que proporcione la contraseña de root de MySQL y establezca una nueva contraseña para la cuenta de administrador de la interfaz web. Espere a que se cree el nuevo sitio Frappe y luego

Paso 5: Iniciar la aplicación ERPNext y acceder a la interfaz de usuario

Una vez implementada la aplicación, puede iniciarla usando el comando:

$ bench start

Cuando el programa se esté ejecutando, deberías obtener:

....
21:17:12 watch.1          | yarn run v1.22.19
21:17:12 watch.1          | $ node esbuild --watch --live-reload
21:17:12 web.1            | WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
21:17:12 web.1            |  * Running on all addresses (0.0.0.0)
21:17:12 web.1            |  * Running on http://127.0.0.1:8000
21:17:12 web.1            |  * Running on http://78.47.91.199:8000
21:17:12 web.1            | Press CTRL+C to quit
21:17:12 web.1            |  * Restarting with stat
21:17:14 web.1            |  * Debugger is active!
21:17:14 web.1            |  * Debugger PIN: 811-922-435
21:17:15 watch.1          | clean: postcss.plugin was deprecated. Migration guide:
21:17:15 watch.1          | https://evilmartians.com/chronicles/postcss-8-plugin-migration

Desde el resultado, puede confirmar que el servicio se está ejecutando en http://0.0.0.0:8000/. Para acceder a la interfaz web, abra la dirección IP del servidor y el puerto http://dirección-ip:8000.

Paso 6: configurar Nginx y Supervisord

Supervisor de instalación:

sudo apt -y install supervisor

Ejecute el script de configuración de producción:

$ sudo bench setup production erpnext
....
PLAY [setup bench and dev environment] ***************************************************************************************************************************************************************

TASK [Gathering Facts] *******************************************************************************************************************************************************************************
task path: /usr/local/lib/python3.10/dist-packages/bench/playbooks/site.yml:40
<127.0.0.1> ESTABLISH LOCAL CONNECTION FOR USER: root
<127.0.0.1> EXEC /bin/sh -c 'echo ~root && sleep 0'
<127.0.0.1> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /root/.ansible/tmp `"&& mkdir "` echo /root/.ansible/tmp/ansible-tmp-1661808076.6268294-8278-222201978895155 `" && echo ansible-tmp-1661808076.6268294-8278-222201978895155="` echo /root/.ansible/tmp/ansible-tmp-1661808076.6268294-8278-222201978895155 `" ) && sleep 0'
Using module file /usr/local/lib/python3.10/dist-packages/ansible/modules/setup.py
<127.0.0.1> PUT /root/.ansible/tmp/ansible-local-7704nxsoekge/tmp9qq7xbh6 TO /root/.ansible/tmp/ansible-tmp-1661808076.6268294-8278-222201978895155/AnsiballZ_setup.py
<127.0.0.1> EXEC /bin/sh -c 'chmod u+x /root/.ansible/tmp/ansible-tmp-1661808076.6268294-8278-222201978895155/ /root/.ansible/tmp/ansible-tmp-1661808076.6268294-8278-222201978895155/AnsiballZ_setup.py && sleep 0'
<127.0.0.1> EXEC /bin/sh -c '/usr/bin/python3 /root/.ansible/tmp/ansible-tmp-1661808076.6268294-8278-222201978895155/AnsiballZ_setup.py && sleep 0'
<127.0.0.1> EXEC /bin/sh -c 'rm -f -r /root/.ansible/tmp/ansible-tmp-1661808076.6268294-8278-222201978895155/ > /dev/null 2>&1 && sleep 0'
ok: [localhost]
META: ran handlers
META:
META: ran handlers
META: ran handlers

PLAY RECAP *******************************************************************************************************************************************************************************************
localhost                  : ok=8    changed=5    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0

Setting Up supervisor...
Setting Up NGINX...
Port configuration list:

Site erp.computingforgeeks.com assigned port: 80
Setting Up symlinks and reloading services...
$ sudo /usr/sbin/nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
$ sudo systemctl reload nginx

El archivo Nginx generado se coloca en: /etc/nginx/conf.d/frappe-bench.conf y el archivo de configuración del supervisor /etc/supervisor/conf.d/frappe-bench.conf .

Si encuentra que falta la configuración del supervisor, vuelva a ejecutar los comandos de configuración:

 sudo bench setup production erpnext

Confirme que el servicio nginx se esté ejecutando:

$ systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-08-29 20:59:59 UTC; 37min ago
       Docs: man:nginx(8)
    Process: 8365 ExecReload=/usr/sbin/nginx -g daemon on; master_process on; -s reload (code=exited, status=0/SUCCESS)
   Main PID: 5535 (nginx)
      Tasks: 2 (limit: 2258)
     Memory: 3.4M
        CPU: 51ms
     CGroup: /system.slice/nginx.service
             ├─5535 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;"
             └─8366 "nginx: worker process" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ""

Warning: some journal files were not opened due to insufficient permissions.

Abra el dominio de su aplicación configurado para iniciar sesión.

http://erp.example.com

Continúe con la configuración basada en web.

Deberías obtener una página para iniciar sesión. Utilice el nombre de usuario Administrador y la contraseña que proporcionó durante la configuración.

Seleccione el idioma de su elección y haga clic en “Siguiente“. Luego seleccione el país, se completará la moneda automáticamente.

Agregue el primer usuario con correo electrónico y contraseña y haga clic en el botón "Completar configuración".

Cuando termine, debería acceder al panel web de ERPNext.

Guías similares:

  • Cómo instalar Odoo en Ubuntu Linux
  • Instale Dolibarr ERP y CRM en Ubuntu

Artículos relacionados: