Installation ERP · 11 min read · Oct 14, 2025

Comment installer ERPNext sur Ubuntu 20.04 LTS

ERPNext est un logiciel ERP gratuit et open-source construit avec Python, JavaScript et le Frappe Framework. C’est un système d’affaires moderne, facile à utiliser et gratuit, utilisé par les fabricants, les distributeurs et les services. Il est conçu pour les petites et moyennes entreprises qui aident les sociétés à gérer tous les aspects de leurs opérations commerciales. C’est l’un des meilleurs logiciels de gestion ERP open-source utilisé par des milliers d’entreprises dans le monde pour gérer leurs processus ERP.

Dans ce tutoriel, je vais expliquer comment installer ERPNext sur un serveur Ubuntu 20.04.

Prérequis

  • Un serveur exécutant Ubuntu 20.04.
  • Un domaine valide pointé vers votre serveur.
  • Un mot de passe root configuré sur votre serveur.

Mise en route

Avant de commencer, vous devrez installer les dépendances Python requises sur votre système. Vous pouvez toutes les installer avec la commande suivante :

apt-get install python3-dev libffi-dev git python3-pip python3-testresources libssl-dev wkhtmltopdf gcc g++ make -y

Après avoir installé les dépendances Python, ERPNext utilise également Node.js pour son frontend. Ajoutez donc le dépôt Node.js avec la commande suivante :

curl -sL https://deb.nodesource.com/setup_12.x | bash -

Ensuite, installez Node.js et le serveur Redis avec la commande suivante :

apt-get install nodejs redis-server -y

Une fois les deux paquets installés, installez le paquet Yarn en exécutant la commande suivante :

npm install -g yarn

Une fois que vous avez terminé, vous pouvez passer à l’étape suivante.

Installer et configurer la base de données MariaDB

Par défaut, MariaDB est disponible dans le dépôt par défaut d’Ubuntu 20.04. Vous pouvez l’installer avec la commande suivante :

apt-get install mariadb-server -y

Une fois installé, sécurisez MariaDB et définissez le mot de passe root de MariaDB avec la commande suivante :

mysql_secure_installation

Répondez à toutes les questions comme indiqué ci-dessous pour définir le mot de passe root de MariaDB et sécuriser l’installation :

Entrez le mot de passe actuel pour root (appuyez sur Entrée pour aucun) :
Définir le mot de passe root ? [Y/n] Y
Nouveau mot de passe :
Ressaisissez le nouveau mot de passe :
Supprimer les utilisateurs anonymes ? [Y/n] Y
Interdire la connexion root à distance ? [Y/n] Y
Supprimer la base de données de test et l'accès à celle-ci ? [Y/n] Y
Recharger les tables de privilèges maintenant ? [Y/n] Y

Une fois que MariaDB est sécurisé, connectez-vous à la console MariaDB avec la commande suivante :

mysql -u root -p

Ensuite, changez le plugin d’authentification de MariaDB avec la commande suivante :

MariaDB [(none)]>USE mysql;  
MariaDB [(none)]>UPDATE user SET plugin='mysql_native_password' WHERE User='root';

Ensuite, videz les privilèges et quittez le shell MariaDB avec la commande suivante :

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

Ensuite, vous devrez changer le format de fichier Innodb de MariaDB en Barracuda. Vous pouvez le faire en modifiant le fichier /etc/mysql/mariadb.conf.d/50-server.cnf :

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

Ajoutez / Modifiez les lignes suivantes :

[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

Enregistrez et fermez le fichier, puis redémarrez le service MariaDB pour appliquer les modifications :

systemctl restart mariadb

Installer ERPNext

Dans cette section, nous allons vous montrer comment créer un utilisateur ERPNext, installer l’outil bench et installer ERPNext sur votre système.

Créer un utilisateur ERPNext

Tout d’abord, créez un nouvel utilisateur pour exécuter ERPNext en utilisant la commande suivante :

useradd -m -s /bin/bash erpnext

Ensuite, définissez le mot de passe pour ERPNext avec la commande suivante :

passwd erpnext

Ensuite, ajoutez l’utilisateur ERPNext au groupe sudo avec la commande suivante :

usermod -aG sudo erpnext

Ensuite, connectez-vous à l’utilisateur ERPNext et configurez la variable d’environnement avec la commande suivante :

su - erpnext  
nano ~/.bashrc

Ajoutez la ligne suivante :

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

Enregistrez le fichier, puis activez la variable d’environnement avec la commande suivante :

source ~/.bashrc

Installer l’outil Bench

Tout d’abord, changez le répertoire pour l’utilisateur ERPNext et créez un répertoire pour ERPNext avec la commande suivante :

su - erpnext  
sudo mkdir /opt/bench

Ensuite, définissez la propriété à l’utilisateur erpnext :

sudo chown -R erpnext:erpnext /opt/bench

Ensuite, changez le répertoire en /opt/bench et clonez le dépôt bench depuis Git Hub :

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

Ensuite, installez le dépôt bench en utilisant la commande pip3 :

pip3 install -e bench-repo

Une fois installé, initialisez le répertoire bench avec le framework frappe en utilisant la commande suivante :

bench init erpnext

Vous devriez obtenir la sortie suivante :

? 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/frappe-rtl.css
? Built css/printview.css
? Built js/bootstrap-4-web.min.js
? Built js/barcode_scanner.min.js
? Built css/list.min.css
? Built css/report.min.css
? Built frappe/css/email.css
? Built js/frappe-recorder.min.js
? Built js/desk.min.js
? Built css/frappe-chat-web.css
? Built js/frappe-web.min.js
? Built css/form.min.css
? Built css/web_form.css
? Built css/desk.min.css
? Built css/frappe-web-b4.css
? Built js/control.min.js
? Built js/form.min.js
? Built js/data_import_tools.min.js
? Built js/report.min.js
?  Done in 111.35s
Done in 113.33s.
SUCCESS: Bench erpnext initialized

Créer un site ERPNext

Ensuite, changez le répertoire en erpnext et créez un nouveau site ERPNext avec la commande suivante :

cd /opt/bench/erpnext  
bench new-site erp.linuxbuz.com

Vous serez invité à fournir votre mot de passe root MariaDB et le mot de passe Administrateur comme indiqué ci-dessous :

Mot de passe root MySQL : 

Installation de frappe...
Mise à jour des DocTypes pour frappe        : [========================================] 100%
Mise à jour des informations sur le pays               : [========================================] 100%
Définir le mot de passe Administrateur : 
Ressaisissez le mot de passe Administrateur : 
* Le planificateur est désactivé *
Site actuel défini sur erp.linuxbuz.com

À ce stade, ERPNext est installé sur votre système.

Configurer ERPNext pour l’environnement de production

Ensuite, vous devrez installer Supervisor pour gérer le processus ERPNext et Nginx en tant que proxy inverse.

Tout d’abord, changez l’utilisateur en ERPNext et installez Supervisor et Nginx avec la commande suivante :

su - erpnext  
sudo apt-get install supervisor nginx -y

Ensuite, installez le frappe-bench avec la commande suivante :

sudo pip3 install frappe-bench

Ensuite, changez le répertoire en /opt/bench/erpnext et configurez ERPNext pour l’environnement de production avec la commande suivante :

cd /opt/bench/erpnext  
sudo /home/erpnext/.local/bin/bench setup production erpnext

Une fois ERPNext configuré, vous devriez voir la sortie suivante :

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

$ sudo systemctl restart supervisor
Liste de configuration des ports :

Site erp.linuxbuz.com assigné au port : 80
$ /usr/bin/supervisorctl reread
Aucune mise à jour de configuration pour les processus
$ /usr/bin/supervisorctl update
$ sudo /usr/sbin/nginx -t
nginx : le fichier de configuration /etc/nginx/nginx.conf a une syntaxe correcte
ginx : le test du fichier de configuration /etc/nginx/nginx.conf est réussi
$ sudo systemctl reload nginx

À ce stade, ERPNext est configuré avec Nginx pour l’environnement de production.

Accéder à l’interface Web ERPNext

Maintenant, ouvrez votre navigateur Web et tapez l’URL http://erp.linuxbuz.com. Vous serez redirigé vers la page de connexion ERPNext :

Fournissez le nom d’utilisateur comme Administrateur et un mot de passe que vous avez défini précédemment et cliquez sur le bouton Connexion. Vous devriez voir la page suivante :

Sélectionnez votre langue souhaitée et cliquez sur le bouton Suivant. Vous devriez voir la page suivante :

Sélectionnez votre pays, votre fuseau horaire, votre devise et cliquez sur le bouton Suivant. Vous devriez voir la page suivante :

Fournissez votre nom, votre e-mail, votre mot de passe et cliquez sur le bouton Terminer Configuration. Vous devriez voir le tableau de bord ERPNext sur la page suivante :

Sécuriser ERPNext avec Let’s Encrypt SSL

Tout d’abord, vous devrez installer le client Certbot pour installer et gérer le SSL Let’s Encrypt. Vous pouvez l’installer avec la commande suivante :

sudo apt-get install certbot python3-certbot-nginx -y

Une fois installé, exécutez la commande suivante pour installer et configurer le SSL Let’s Encrypt pour votre domaine :

sudo certbot --nginx -d erp.linuxbuz.com

Vous serez invité à fournir votre e-mail et à accepter les conditions de service comme indiqué ci-dessous :

Enregistrement du journal de débogage dans /var/log/letsencrypt/letsencrypt.log
Plugins sélectionnés : Authenticator nginx, Installer nginx
Entrez l'adresse e-mail (utilisée pour le renouvellement urgent et les avis de sécurité) (Entrez 'c' pour annuler) : [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Veuillez lire les conditions de service à l'adresse https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Vous devez
accepter pour vous inscrire auprès du serveur ACME à l'adresse https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)ccepter/(C)annuler : A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Seriez-vous prêt à partager votre adresse e-mail avec la Electronic Frontier
Foundation, un partenaire fondateur du projet Let's Encrypt et l'organisation à but non lucratif
qui développe Certbot ? Nous aimerions vous envoyer un e-mail sur notre travail
pour chiffrer le web, les nouvelles de l'EFF, les campagnes et les moyens de soutenir la liberté numérique.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(O)ui/(N)on : Y
Obtention d'un nouveau certificat
Effectuer les défis suivants :
http-01 challenge pour erp.linuxbuz.com
En attente de vérification...
Nettoyage des défis
Déploiement du certificat sur le VirtualHost /etc/nginx/conf.d/erpnext.conf

Ensuite, sélectionnez si vous souhaitez ou non rediriger le trafic HTTP vers HTTPS comme indiqué ci-dessous :

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 : Pas de redirection - Ne faites aucun changement supplémentaire à la configuration du serveur web.
2 : Rediriger - Faire en sorte que toutes les demandes soient redirigées vers un accès HTTPS sécurisé. Choisissez ceci pour
les nouveaux sites, ou si vous êtes sûr que votre site fonctionne sur HTTPS. Vous pouvez annuler ce
changement en modifiant la configuration de votre serveur web.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Sélectionnez le numéro approprié [1-2] puis [Entrée] (appuyez sur 'c' pour annuler) : 2

Tapez 2 et appuyez sur Entrée pour terminer le processus. Vous devriez voir la sortie suivante :

Redirection de tout le trafic sur le port 80 vers ssl dans /etc/nginx/conf.d/erpnext.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Félicitations ! Vous avez activé avec succès https://erp.linuxbuz.com

Vous devriez tester votre configuration à l'adresse :
https://www.ssllabs.com/ssltest/analyze.html?d=erp.linuxbuz.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

NOTES IMPORTANTES :
 - Félicitations ! Votre certificat et votre chaîne ont été enregistrés à :
   /etc/letsencrypt/live/erp.linuxbuz.com/fullchain.pem
   Votre fichier clé a été enregistré à :
   /etc/letsencrypt/live/erp.linuxbuz.com/privkey.pem
   Votre certificat expirera le 2020-08-29. Pour obtenir une nouvelle version ou une version modifiée
   de ce certificat à l'avenir, exécutez simplement certbot à nouveau
   avec l'option "certonly". Pour renouveler de manière non interactive *tous*
   vos certificats, exécutez "certbot renew"
 - Vos informations d'identification de compte ont été enregistrées dans votre répertoire de configuration Certbot à /etc/letsencrypt. Vous devriez faire une
   sauvegarde sécurisée de ce dossier maintenant. Ce répertoire de configuration contiendra également des certificats et des clés privées obtenus par Certbot, donc
   faire des sauvegardes régulières de ce dossier est idéal.
 - Si vous aimez Certbot, veuillez envisager de soutenir notre travail en :

   Faire un don à ISRG / Let's Encrypt :   https://letsencrypt.org/donate
   Faire un don à l'EFF :                    https://eff.org/donate-le

 - Nous n'avons pas pu vous abonner à la liste de diffusion de l'EFF car votre
   adresse e-mail semble invalide. Vous pouvez essayer à nouveau plus tard en
   visitant https://act.eff.org.

À ce stade, votre site Web ERPNext est sécurisé avec Let’s Encrypt SSL. Vous pouvez maintenant accéder à votre site Web de manière sécurisée avec le protocole HTTPS.

Conclusion

Dans ce guide, nous avons appris comment installer ERPNext avec Nginx sur Ubuntu 20.04. Nous avons également appris comment sécuriser ERPNext avec Let’s Encrypt SSL. Vous pouvez visiter la page de documentation d’ERPNext pour plus d’informations.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.