Die Installation von ERPNext kann nervig sein, besonders wenn Sie gerade erst anfangen. In diesem Artikel werde ich Schritt für Schritt vorgehen, um unser neu installiertes Betriebssystem Ubuntu 20.04 zu konfigurieren, um eine Umgebung einzurichten und ERPNext zu installieren.
- Updated Ubuntu 20.04
- A user with sudo privileges
- Python 3.6+
- Node.js 12
- Redis 5
- MariaDB 10.3.x / Postgres 9.5.x
- yarn 1.12+
- pip 20+
- wkhtmltopdf (version 0.12.5 with patched qt)
- cron
- NGINX
- 4GB RAM
- 40GB Hard Disk
In unseren ersten Schritten stellen wir sicher, dass unser System auf dem neuesten Stand ist, indem wir die folgenden Befehle ausführen:
sudo apt update
sudo apt -y upgrade
Es wird empfohlen, Ihr System bei jedem Upgrade neu zu starten:
sudo reboot
sudo apt -y install vim libffi-dev python3-pip python3-dev python3-testresources libssl-dev wkhtmltopdf python3.10-venv
sudo apt install curl
sudo curl --silent --location https://deb.nodesource.com/setup_14.x | sudo bash -
curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/yarnkey.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] 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
sudo apt -y install gcc g++ make nodejs redis-server
sudo apt -y install nginx
sudo apt install mariadb-server
Authentifizierungs-Plugin ändern.
sudo mysql -u root
USE mysql;
UPDATE user SET plugin='mysql_native_password' WHERE User='root';
UPDATE user SET authentication_string=password('your_password') WHERE user='root';
FLUSH PRIVILEGES;
EXIT;
Sollte während der Installation folgender Fehler auftreten:
ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'localhost'
Dann handelt es sich um einen Fehler, der durch eine Änderung in der Nutzerverwaltung von MariaDB Version 10.4 und höher verursacht wird. Hierbei ist die mysql.user Tabelle nun eine Ansicht (View), und die tatsächlichen Benutzerdaten sind in der global_priv Tabelle innerhalb der mysql Datenbank gespeichert.
Um diesen Fehler zu beheben, folge bitte diesen Schritten:
Starte das MariaDB Interface mit dem Befehl:
sudo mysql -u root
Im MariaDB Interface, führe folgende Befehle aus:
USE mysql;
UPDATE mysql.global_priv SET priv=json_set(priv, '$.authentication_string', PASSWORD('Ihr_Neues_Passwort'), '$.plugin', 'mysql_native_password') WHERE User='root' AND Host='localhost';
FLUSH PRIVILEGES;
EXIT;
Ersetze 'Ihr_Neues_Passwort' mit dem neuen Passwort für den Root-Benutzer. Dieser Befehl aktualisiert sowohl die Authentifizierungsmethode als auch das Passwort für den Root-Benutzer in der mysql.global_priv Tabelle direkt.
Stellen Sie sicher, dass Sie die folgenden Einstellungen für mysqld und den mysql-Client wie angegeben haben. Ich habe eine Datei in einem Github-Repo abgelegt, damit Sie die gesamte Datei kopieren und ersetzen können.
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
sudo systemctl restart mariadb
Eine Bench ist ein Tool zum Installieren und Verwalten von ERPNext auf Ihrem Ubuntu-System. Wir erstellen einen Benutzer, der das ERPNext-System ausführt, und konfigurieren dann das System.
sudo useradd -m -s /bin/bash erpnext
sudo passwd erpnext
sudo usermod -aG sudo erpnext
Jetzt ist es an der Zeit, Ihren PATH zu aktualisieren.
sudo su - erpnext
tee -a ~/.bashrc<<EOF
PATH=\$PATH:~/.local/bin/
EOF
source ~/.bashrc
Als nächstes müssen Sie ein Verzeichnis für das ERPNext-Setup erstellen und erpnext-Benutzern Lese- und Schreibberechtigungen für das Verzeichnis erteilen:
sudo mkdir /opt/bench
sudo chown -R erpnext /opt/bench
Wechseln Sie als Nächstes zum erpnext-Benutzer und installieren Sie die Anwendung:
cd /opt/bench
Frappe-bench und Git installieren
sudo apt install git
sudo pip3 install frappe-bench
Der nächste Schritt besteht darin, das Bench-Verzeichnis mit installiertem Frappe-Framework zu initialisieren. Stellen Sie sicher, dass Sie sich noch im Verzeichnis /opt/bench befinden:
bench init --frappe-branch version-14 erpnext
Ignoriere die Warnung:
WARN Cannot connect to redis_cache to update assets_json
WARN Cannot connect to redis_cache to update assets_json
WARN Cannot connect to redis_cache to update assets_json
Erstellen Sie eine neue Frappe-Site.
cd erpnext
bench new-site erp.testSite.com
Laden Sie die ERPNext aus dem Frappe-Github-Repo herunter. Wir werden Version 14 verwenden. Sie können jede Version verwenden, die Sie möchten.
bench get-app --branch version-14 erpnext
bench --site erp.testSite.com install-app erpnext
Navigieren Sie zu Ihrem sites
Verzeichnis und erstellen Sie eine currentsite.txt
Datei. Schreiben Sie den Namen Ihrer Website in diese Datei und ändern Sie die Berechtigungen, sodass das bench
Kommando darauf zugreifen kann.
cd /opt/bench/erpnext/sites
echo "erp.testSite.com" > currentsite.txt
sudo chown $USER: currentsite.txt
Ersetzen Sie erp.testSite.com
mit dem Namen Ihrer Website.
bench use erp.testSite.com
bench start
Navigieren Sie zur IP-Adresse Ihrer Installation und der Portnummer, die nach dem Ausführen auf dem Terminal angezeigt wird. Verwenden Sie im Fall einer lokalen Instanz 127.0.0.1:8000.
Führen Sie den folgenden Befehl aus, um den Modus zu wechseln:
sudo bench setup production $USER
sudo supervisorctl restart all
Diese Schritte sollten jetzt alle notwendigen Schritte abdecken, um eine ERPNext-App auf Ihrer Website zu installieren und zu starten, sowie die Site für das bench
Kommando zu setzen und vom Entwicklungsmodus in den Produktionsmodus zu wechseln.