GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer ERPNext sur CentOS 8

ERPNext est un cadre ERP complètement robuste destiné aux petites et moyennes entreprises. Il couvre une grande variété de fonctionnalités, y compris la comptabilité, le CRM, l'inventaire, la vente, les achats, la fabrication, les projets, les ressources humaines et la paie, le site Web, le commerce électronique, etc., ce qui le rend profondément adaptable et extensible.

ERPNext est développé en Python et dépend du Framework Frappe. Il utilise Node.js pour le front-end, Nginx pour le serveur Web, Redis pour la mise en cache et MariaDB pour la base de données.

ERPNext est Open Source sous la Licence Publique Générale GNU v3.

Dans cet article, nous allons vous montrer comment installer ERPNext sur CentOS 8 sur l'un de nos serveurs d'hébergement ERPNext optimisés.

Prérequis :

Assurez-vous que votre serveur répond aux exigences suivantes.

  • 2 Go de RAM ou plus
  • 2 cœurs de processeur ou plus
  • Nouvelle installation de CentOS 8
  • Accès root complet

Préparer et mettre à jour le système et installer les dépendances

Connectez-vous à votre serveur via SSH :

ssh username@server_ip

Avant de commencer l'installation d'ERPNext, il est conseillé de mettre à jour les packages système vers leurs dernières versions.

sudo yum update -y

Installez le référentiel de packages supplémentaires :

sudo yum install -y epel-release

Nous pouvons mettre en place ERPNext sur deux environnements, développement et production. Pour l'environnement de développement, il n'y aura no Nginx installed et vous devez démarrer ERPNext manuellement. Pour un environnement de production,  Nginx is installed et le processus sera géré par supervisor . Vous en apprendrez plus sur le superviseur plus loin dans ce didacticiel.

Lors de l'installation dans un environnement de production, nous devons nous assurer que nous uninstall Apache d'abord car le script d'installation configurera Nginx. Il est également recommandé de uninstall MariaDB pour éviter les conflits lors de l'installation pour la production et le développement. Pour un environnement de développement, il est prudent de laisser Apache installé et en cours d'exécution car Nginx ne sera pas installé.

Pour arrêter et désinstaller Apache (required for production set up only) :

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

Pour arrêter et désinstaller 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

Installez les packages requis avec MariaDB, Nginx, NodeJS, redis :

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

Installez le gestionnaire de paquets Yarn :

sudo npm install -g yarn

Désactiver SELinux

Afin d'éviter de configurer un ensemble de règles SELinux complexe, nous aurions besoin de le désactiver. La désactivation de SELinux sur CentOS 7 est une tâche assez simple. Vous pouvez le faire avec une seule commande :

echo 0 > /selinux/enforce

Comme alternative, vous pouvez utiliser la commande suivante :

setenforce 0

Maintenant, vérifiez à nouveau l'état et assurez-vous qu'il est désactivé.

Veuillez noter que cela ne désactivera SELinux que temporairement. Si vous souhaitez le désactiver définitivement, vous devrez effectuer les étapes suivantes :

Ouvrez le /etc/sysconfig/selinux fichier à éditer avec un éditeur de texte de votre choix. Nous utiliserons vim dans l'exemple ci-dessous.

vim /etc/sysconfig/selinux

Une fois le fichier ouvert, modifiez la ligne suivante :

SELINUX=enforcing

à

SELINUX=disabled

Ensuite, enregistrez et fermez le fichier.

Installer ERPNext

Création d'un utilisateur ERPNext

Une fois que nous avons installé les packages requis, nous pouvons commencer l'installation d'ERPNext.

Nous aurions besoin d'un utilisateur qui sera dédié à l'instance ERPNext et qui aura un accès sudo :

sudo useradd -m erp -G wheel

Les paramètres sudo par défaut nous obligent à entrer le mot de passe lorsque nous émettons la commande. Vous pouvez éviter cela avec :

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

Nous devons définir des paramètres de noyau supplémentaires :

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

Nous devons faire un redémarrage pour que les paramètres du noyau puissent prendre effet.

Configurer MariaDB (fork MySQL) pour ERPNext

Contrairement aux autres applications ERP, ERPNext supporte MariaDB afin de stocker la partie persistante des données. Auparavant, nous avons installé la dernière version disponible de MariaDB pour CentOS 8 et nous devons maintenant la configurer pour ERPNext.

Créez un fichier de configuration pour ERPNext pour 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]

jeu de caractères par défaut =utf8mb4 EOF

Activez et démarrez le service MariaDB :

sudo systemctl enable mariadb
sudo systemctl start mariadb

Démarrez le script d'installation sécurisée de MariaDB (assurez-vous de vous souvenir du mot de passe root de MariaDB). De plus, utilisez toujours un mot de passe fort si on vous le demande :

sudo mysql_secure_installation

Installer ERPNext

Nous allons installer ERPNext sous le nouvel utilisateur que nous avons créé, erp.

Passez à l'utilisateur ERPNext et remplacez le répertoire de travail par son répertoire d'accueil :

su - erp

Installez frappe-bench avec pip3 et initialisez la version-12 :

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

Une fois l'initialisation terminée, vous obtiendrez le message suivant :

SUCCESS: Bench frappe-bench initialized

Avec le banc de frappe initialisé, nous pouvons créer un nouveau site de frappe pour notre instance ERPNext.

Nous devons démarrer le serveur de développement frappe :

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

Nous devons créer un nouveau site avec notre nom de domaine/sous-domaine :

bench new-site erp.rosehosting.com

Nous recevrons une invite pour le mot de passe MySQL que nous avons entré précédemment. Entrez le mot de passe root MySQL.

Nous sommes maintenant prêts à télécharger et installer ERPNext via bench.

Téléchargez d'abord la dernière version d'ERPNext avec bench :

bench get-app erpnext --branch version-12

Une fois téléchargé, installez-le :

bench install-app erpnext

Nous sommes maintenant prêts à démarrer et à utiliser ERPNext

Démarrer ERPNext

Dans une configuration d'environnement de développement, il est nécessaire de démarrer manuellement l'application ERPNext. L'application ERPNext écoute sur le port 8000.

Développement

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

Vous pouvez désormais accéder à votre configuration sur :

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

Production

À un moment donné, nous voudrions qu'ERPNext soit en mode production.

Pour cela, nous aurions besoin de créer des fichiers de production pour le superviseur et nginx :

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

Ajoutez un lien des fichiers de configuration nouvellement créés vers leurs services respectifs :

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

Changez le propriétaire du processus nginx en erp en modifiant /etc/nginx/conf/nginx.conf et changer la directive utilisateur en :

user erp erp;

Supervisor est un système de contrôle de processus qui vous permet de surveiller et de contrôler les processus sur les systèmes exécutant Linux. Lorsque le superviseur est en cours d'exécution, il démarre automatiquement l'application au démarrage et gère les échecs de processus. Le script d'installation configure automatiquement le superviseur pour votre application ERPNext.

Vous pouvez maintenant activer et démarrer à la fois le superviseur et Nginx :

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

Vous pouvez maintenant vous connecter à votre site Web de production without using port 8000 car le serveur Web Nginx est déjà configuré en tant que proxy inverse pour le port 8000.

Une fois connecté, vous devriez maintenant pouvoir finaliser la configuration initiale de votre application ERPNext.

Bien sûr, vous n'êtes pas obligé d'installer ERPNext sur CentOS 8 si vous avez un VPS ERPNext chez nous. Vous pouvez simplement demander à notre équipe d'assistance d'installer ERPNext sur CentOS 8 pour vous. Ils sont disponibles 24h/24 et 7j/7 et pourront vous aider dans l'installation.

PS . Si vous avez apprécié la lecture de cet article de blog sur Comment installer ERPNext sur CentOS 8, n'hésitez pas à le partager sur les réseaux sociaux en utilisant les raccourcis ci-dessous, ou laissez simplement un commentaire. Merci.


Cent OS
  1. Comment installer Vagrant sur CentOS 7

  2. Comment installer Gitea sur CentOS 8

  3. Comment installer Memcached sur CentOS 8

  4. Comment installer ownCloud sur CentOS 8

  5. Comment installer ERPNext sur CentOS 7

Comment installer Jenkins sur CentOS 8

Comment installer Zoom sur CentOS 8

Comment installer Nethogs sur CentOS

Comment installer Yourls dans CentOS 8

Comment installer SuiteCRM sur CentOS 8

Comment installer Minikube sur CentOS 8