Installazione ERP · 7 min read · Oct 12, 2025

Come installare ERPNext su Ubuntu 18.04 LTS

ERPNext è un software di gestione aziendale gratuito, open-source, moderno e facile da usare, utilizzato da migliaia di aziende in tutto il mondo. È una piattaforma ERP molto semplice che supporta il commercio al dettaglio, il trading, i servizi, la produzione, le risorse umane, le organizzazioni non profit e altri settori. È un sistema ERP potente e completo scritto in Python sulla base del framework Frappe. Utilizza Node.js per il front end e MariaDB per memorizzare i suoi dati. ERPNext fornisce un’interfaccia web per eseguire le attività quotidiane. ERPNext offre un sistema di reporting integrato con integrazione della suite per ufficio.

In questo tutorial, impareremo come installare e configurare ERPNext su un server Ubuntu 18.04 LTS.

Requisiti

  • Un server che esegue Ubuntu 18.04.
  • Un utente non root con privilegi sudo configurato sul tuo server.

Iniziare

Per prima cosa, dovrai aggiornare il tuo sistema con l’ultima versione. Puoi farlo eseguendo il seguente comando:

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

Una volta aggiornato il sistema, dovrai creare un utente per ERPNext.

Puoi farlo con il seguente comando:

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

Successivamente, dai i privilegi sudo all’utente ERPNext con il seguente comando:

sudo usermod -aG sudo erpnext

Successivamente, accedi all’utente ERPNext e imposta la variabile d’ambiente con il seguente comando:

su - erpnext
nano .bashrc

Aggiungi la seguente riga:

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

Salva e chiudi il file quando hai finito. Quindi, riavvia il sistema per applicare tutte le modifiche.

Installa i pacchetti richiesti

Per prima cosa, accedi al tuo sistema con l’utente erpnext e installa alcune dipendenze richieste da ERPNext sul tuo sistema.

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

Successivamente, installa il server Nginx e MariaDB con il seguente comando:

sudo apt-get install nginx mariadb-server -y

Una volta completata l’installazione, dovrai apportare alcune modifiche al file 50-server.cnf. Puoi farlo con il seguente comando:

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

Apporta le seguenti modifiche:

[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

Salva e chiudi il file. Quindi, riavvia il servizio MariaDB per applicare tutte le modifiche:

sudo systemctl restart mariadb

Ora puoi controllare lo stato del server MariaDB con il seguente comando:

sudo systemctl status mariadb

Dovresti vedere il seguente output:

? 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

Installa Redis e Node.js

Successivamente, dovrai installare Redis e Node.js sul tuo sistema. Puoi installarli eseguendo il seguente 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

Configura MariaDB

Per impostazione predefinita, l’installazione di MariaDB non è sicura, quindi dovrai prima metterla in sicurezza. Puoi metterla in sicurezza con il seguente comando:

sudo mysql_secure_installation

Rispondi a tutte le domande come mostrato di seguito:

    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 volta che MariaDB è stata messa in sicurezza, accedi alla shell di MariaDB con il seguente comando:

sudo mysql -u root -p

Inserisci la tua password di root quando richiesto. Quindi, crea un database e un utente per ERPNext con il seguente comando:

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

Successivamente, concedi tutti i privilegi a ERPNext con il seguente 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;

Successivamente, svuota i privilegi ed esci dalla shell di MariaDB con il seguente comando:

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

Installa ERPNext

Per prima cosa, crea una directory per ERPNext e dai i permessi appropriati con il seguente comando:

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

Successivamente, cambia la directory in erpnext e installa erpnext con il seguente comando:

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

Output:

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.

Successivamente, installa bench utilizzando il comando pip:

sudo pip install -e bench-repo

Successivamente, inizializza la directory bench con il framework frappe:

bench init erpnext

Output:

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

Successivamente, cambia la directory in erpnext e crea un nuovo sito per il dominio node1.example.com con il seguente comando:

bench new-site node1.example.com

Ti verrà chiesto di fornire la tua password di root MySQL come mostrato di seguito:

MySQL root password:

Fornisci la tua password di root e premi Invio. Dovresti vedere il seguente output:

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

Successivamente, fornisci i permessi appropriati a erpnext con il seguente comando:

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

Infine, avvia il server con il seguente comando:

bench start

Dovresti vedere il seguente output:

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

Accedi a ERPNext

ERPNext è ora installato e in ascolto sulla porta 8000. Apri il tuo browser web e digita l’URL http://node1.example.come:8000. Verrai reindirizzato alla seguente pagina:

Login ERPNext

Ora, fornisci il nome utente come Administrator e la password che hai fornito durante la configurazione. Quindi, fai clic sul pulsante Accedi. Dovresti vedere la seguente pagina:

Seleziona Lingua

Successivamente, scegli la tua lingua e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Imposta nome aziendale

Successivamente, scegli il tuo paese e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Aggiungi un primo utente

Successivamente, fornisci il tuo nome completo e indirizzo email. Quindi, fai clic sul pulsante Completa Configurazione. Dovresti vedere la seguente pagina:

Dashboard ERPNext

Congratulazioni! hai installato e configurato con successo ERPNext nel server Ubuntu 18.04. Ora puoi facilmente configurare ERPNext in un ambiente di produzione.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.