Sur mon poste de travail Linux Mint (v19.3), je souhaite installer ERPNext en mode Developpement (pas de Nginx, ni de supervisor).
Linux Mint n'étant pas une distribution compatible avec la commande
sudo python3 install.py --develop
La procédure s'est avérée plus complexe et le résultat auquel je suis arrivé, n'est pas parfait et est sans doute perfectible.
Cela permet néanmoins de prendre connaissance des différentes étapes du processus d'installation et de mieux appréhender l'architecture technique de ERPNext/Frappe/Bench .
Description
- création user frappe
sudo adduser --system --quiet --shell=/bin/bash --home=/home/frappe --gecos 'FRAPPE' --group frappe
sudo adduser frappe sudo
sudo passwd frappe
su - frappe
- installation packages nécessaires
sudo apt-get update
sudo apt-get install git redis-server build-essential python3-dev python3-pip python3-setuptools mariadb-server libmysqlclient-dev virtualenv
- initialisation mot de passe root de Mariadb
sudo mysql_secure_installation
- configurer Mariadb
sudo vi /etc/mysql/my.cnf
et ajouter les lignes suivantes en fin de fichier
[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
- relance Mariadb
sudo service mariadb restart
- donner des droits supplémentaires au user root de Mariadb
sudo -i
mysql
- exécuter la commande suivante :
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'admin' WITH GRANT OPTION;
- installer nodejs et yarn
curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -
sudo apt-get install -y nodejs
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update && sudo apt-get install yarn
- être sûr d'utiliser python3
alias python=python3
alias pip=pip3
- installer bench
git clone https://github.com/frappe/bench bench-repo
pip install -e bench-repo --user
- forcer une version particulière de werkzeug
pip install werkzeug==0.16.0 --user
- mettre à jour le PATH
PATH=$PATH:$HOME/.local/bin
(idéalement il faudrait créer les fichiers .profile et .bashrc)
- créer un environnement virtuel Bench
bench init frappe-bench --frappe-branch version-12
- création du site
cd frappe-bench
bench new-site site.dev
- installer ERPNext
bench get-app erpnext https://github.com/frappe/erpnext --branch version-12
- déployer l'appli ERPNext dans le site
bench --site site.dev install-app erpnext
- activer le mode developer puis lancer l'instance
bench --site site.dev set-config developer_mode 1
bench start
- dans votre navigateur, lancer le lien http://locahost:8000
Remarques
- Il manque l'installation de wkhtmltopdf
- si erreur "System limit for number of file watchers reached" lors de bench start , exécuter la commande
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
- si erreur concernant Yarn, exécuter la commande
bench setup requirements
- si erreur concernant socketio, exécuter la commande
bench setup socketio