ERPNext instalación · 7 min read · Oct 12, 2025

Cómo instalar ERPNext en Ubuntu 18.04 LTS

ERPNext es un software de gestión empresarial gratuito, de código abierto, moderno y fácil de usar, utilizado por miles de empresas en todo el mundo. Es una plataforma ERP muy simple que admite comercio minorista, comercio, servicios, fabricación, recursos humanos, organizaciones sin fines de lucro y otros sectores. Es un sistema ERP potente y completo escrito en Python sobre el marco Frappe. Utiliza Node.js para el front end y MariaDB para almacenar sus datos. ERPNext proporciona una interfaz basada en la web para realizar tareas diarias. ERPNext proporciona un sistema de informes integrado con integración de suite de oficina.

En este tutorial, aprenderemos a instalar y configurar ERPNext en un servidor Ubuntu 18.04 LTS.

Requisitos

  • Un servidor que ejecute Ubuntu 18.04.
  • Un usuario no root con privilegios sudo configurado en su servidor.

Comenzando

Primero, necesitará actualizar su sistema con la última versión. Puede hacerlo ejecutando el siguiente comando:

sudo apt-get update -y  
sudo apt-get upgrade -y

Una vez que su sistema esté actualizado, necesitará crear un usuario para ERPNext.

Puede hacerlo con el siguiente comando:

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

A continuación, otorgue privilegios sudo al usuario de ERPNext con el siguiente comando:

sudo usermod -aG sudo erpnext

A continuación, inicie sesión en el usuario de ERPNext y configure la variable de entorno con el siguiente comando:

su - erpnext
nano .bashrc

Agregue la siguiente línea:

PATH=$PATH:~/.local/bin/

Guarde y cierre el archivo cuando haya terminado. Luego, reinicie su sistema para aplicar todos los cambios.

Instalar paquetes requeridos

Primero, inicie sesión en su sistema con el usuario erpnext e instale algunas dependencias requeridas por ERPNext en su sistema.

sudo apt-get install libffi-dev python-pip python-dev libssl-dev wkhtmltopdf -y

A continuación, instale el servidor Nginx y MariaDB con el siguiente comando:

sudo apt-get install nginx mariadb-server -y

Una vez que se haya completado la instalación, necesitará hacer algunos cambios en el archivo 50-server.cnf. Puede hacerlo con el siguiente comando:

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

Haga los siguientes cambios:

[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]
default-character-set = utf8mb4

Guarde y cierre el archivo. Luego, reinicie el servicio de MariaDB para aplicar todos los cambios:

sudo systemctl restart mariadb

Ahora puede verificar el estado del servidor MariaDB con el siguiente comando:

sudo systemctl status mariadb

Debería ver la siguiente salida:

? mariadb.service - MariaDB 10.1.38 database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2019-02-16 06:26:48 UTC; 2h 38min ago
     Docs: man:mysqld(8)
           https://mariadb.com/kb/en/library/systemd/
  Process: 4640 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 4636 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
  Process: 4505 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemctl set-
  Process: 4503 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 4482 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
 Main PID: 4607 (mysqld)
   Status: "Taking your SQL requests now..."
    Tasks: 31 (limit: 1111)
   CGroup: /system.slice/mariadb.service
           ??4607 /usr/sbin/mysqld

Aug 16 06:26:47 ubuntu1804 systemd[1]: Starting MariaDB 10.1.38 database server...
Aug 16 06:26:48 ubuntu1804 mysqld[4607]: 2019-02-16  6:26:48 140715015396480 [Note] /usr/sbin/mysqld (mysqld 10.1.38-MariaDB-0ubuntu0.18.04.1) starting
Aug 16 06:26:48 ubuntu1804 systemd[1]: Started MariaDB 10.1.38 database server.
Aug 16 06:26:48 ubuntu1804 /etc/mysql/debian-start[4642]: Upgrading MySQL tables if necessary.
Aug 16 06:26:48 ubuntu1804 /etc/mysql/debian-start[4659]: /usr/bin/mysql_upgrade: the '--basedir' option is always ignored
Aug 16 06:26:48 ubuntu1804 /etc/mysql/debian-start[4659]: Looking for 'mysql' as: /usr/bin/mysql
Aug 16 06:26:48 ubuntu1804 /etc/mysql/debian-start[4659]: Looking for 'mysqlcheck' as: /usr/bin/mysqlcheck
Aug 16 06:26:48 ubuntu1804 /etc/mysql/debian-start[4659]: This installation of MySQL is already upgraded to 10.1.38-MariaDB, use --force if you still n
Aug 16 06:26:48 ubuntu1804 /etc/mysql/debian-start[4677]: Checking for insecure root accounts.
Aug 16 06:26:48 ubuntu1804 /etc/mysql/debian-start[4681]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables

Instalar Redis y Node.js

A continuación, necesitará instalar Redis y Node.js en su sistema. Puede instalarlos ejecutando el siguiente comando:

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

Configurar MariaDB

Por defecto, la instalación de MariaDB no está asegurada, por lo que primero deberá asegurarlo. Puede asegurarlo con el siguiente comando:

sudo mysql_secure_installation

Responda a todas las preguntas como se muestra a continuación:

    Enter current password for root (enter for none):
    Set root password? [Y/n]: N
    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

Una vez que MariaDB esté asegurado, inicie sesión en el shell de MariaDB con el siguiente comando:

sudo mysql -u root -p

Ingrese su contraseña de root cuando se le solicite. Luego, cree una base de datos y un usuario para ERPNext con el siguiente comando:

MariaDB [(none)]> create database erpnextdb;  
MariaDB [(none)]> create user erpnextuser@localhost identified by 'password';

A continuación, otorgue todos los privilegios a ERPNext con el siguiente comando:

MariaDB [(none)]> GRANT ALL ON erpnextdb.* TO 'erpnextuser'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;  
MariaDB [(none)]> GRANT all privileges on *.* to 'root'@'localhost' IDENTIFIED BY 'admin@123' WITH GRANT OPTION;

A continuación, limpie los privilegios y salga del shell de MariaDB con el siguiente comando:

MariaDB [(none)]> FLUSH PRIVILEGES;  
MariaDB [(none)]> EXIT;

Instalar ERPNext

Primero, cree un directorio para ERPNext y otorgue los permisos adecuados con el siguiente comando:

sudo mkdir -p /opt/erpnext  
sudo chown -R erpnext /opt/erpnext/

A continuación, cambie el directorio a erpnext e instale erpnext con el siguiente comando:

cd /opt/erpnext
git clone https://github.com/frappe/bench bench-repo

Salida:

Cloning into 'bench-repo'...
remote: Enumerating objects: 19, done.
remote: Counting objects: 100% (19/19), done.
remote: Compressing objects: 100% (14/14), done.
remote: Total 6144 (delta 10), reused 13 (delta 5), pack-reused 6125
Receiving objects: 100% (6144/6144), 29.70 MiB | 231.00 KiB/s, done.
Resolving deltas: 100% (3924/3924), done.

A continuación, instale bench usando el comando pip:

sudo pip install -e bench-repo

A continuación, inicialice el directorio de bench con el marco frappe:

bench init erpnext

Salida:

Building frappe assets...

? Built js/print_format_v3.min.js
? Built js/dialog.min.js
? Built js/web_form.min.js
? Built js/social.min.js
? Built js/modules.min.js
? Built js/form.min.js
? Built js/list.min.js
? Built js/frappe-vue.min.js
? Built js/chat.js
? Built js/desk.min.js
? Built js/control.min.js
? Built css/frappe-rtl.css
? Built css/module.min.css
? Built css/report.min.css
? Built css/form.min.css
? Built css/list.min.css
? Built frappe/css/email.css
? Built css/web_form.css
? Built css/frappe-web.css
? Built css/desk.min.css
? Built js/frappe-web.min.js
? Built js/report.min.js
?  Done in 31.313s
Done in 34.43s.
INFO:bench.utils:setting up backups
no crontab for erpnext
INFO:bench.utils:setting up auto update
no crontab for erpnext
Bench erpnext initialized

A continuación, cambie el directorio a erpnext y cree un nuevo sitio para el dominio node1.example.com con el siguiente comando:

bench new-site node1.example.com

Se le pedirá que proporcione su contraseña de root de MySQL como se muestra a continuación:

MySQL root password:

Proporcione su contraseña de root y presione Enter. Debería ver la siguiente salida:

Installing frappe...
Updating DocTypes for frappe        : [========================================]
Updating country info               : [========================================]
Set Administrator password: 
Re-enter Administrator password: 
* Scheduler is disabled *

A continuación, proporcione los permisos adecuados a erpnext con el siguiente comando:

sudo chown -R erpnext:erpnext /opt/erpnext/erpnext

Finalmente, inicie el servidor con el siguiente comando:

bench start

Debería ver la siguiente salida:

06:34:02 web.1            |  * Running on http://0.0.0.0:8000/ (Press CTRL+C to quit)
06:34:02 web.1            |  * Restarting with inotify reloader
06:34:03 watch.1          | yarn run v1.13.0
06:34:03 watch.1          | $ node rollup/watch.js
06:34:03 web.1            |  * Debugger is active!
06:34:04 web.1            |  * Debugger PIN: 159-307-235
06:34:13 watch.1          | 
06:34:13 watch.1          | Rollup Watcher Started
06:34:13 watch.1          | 
06:34:13 watch.1          | Watching...
06:34:15 watch.1          | Rebuilding frappe-web.css

Acceder a ERPNext

ERPNext está ahora instalado y escuchando en el puerto 8000. Abra su navegador web y escriba la URL http://node1.example.come:8000. Serás redirigido a la siguiente página:

Inicio de sesión de ERPNext

Ahora, proporcione el nombre de usuario como Administrador y la contraseña que proporcionó durante la configuración. Luego, haga clic en el botón Iniciar sesión. Debería ver la siguiente página:

Seleccionar idioma

A continuación, elija su idioma y haga clic en el botón Siguiente. Debería ver la siguiente página:

Establecer nombre de la empresa

A continuación, elija su país y haga clic en el botón Siguiente. Debería ver la siguiente página:

Agregar un primer usuario

A continuación, proporcione su nombre completo y dirección de correo electrónico. Luego, haga clic en el botón Completar configuración. Debería ver la siguiente página:

Tablero de ERPNext

¡Felicidades! ha instalado y configurado ERPNext con éxito en el servidor Ubuntu 18.04. Ahora puede configurar fácilmente ERPNext en un entorno de producción.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.