GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie ERPNext auf CentOS 8

ERPWeiter ist ein absolut robustes ERP-Framework für kleine und mittlere Unternehmen. Es deckt eine Vielzahl von Funktionen ab, darunter Buchhaltung, CRM, Inventar, Verkauf, Einkauf, Fertigung, Projekte, Personalwesen und Gehaltsabrechnung, Website, E-Commerce und mehr – all dies macht es zutiefst anpassungsfähig und erweiterbar.

ERPNext wird in Python entwickelt und hängt vom Frappe Framework ab. Es verwendet Node.js für das Frontend, Nginx für den Webserver, Redis für das Caching und MariaDB für die Datenbank.

ERPNext ist Open Source unter der GNU General Public License v3.

In diesem Artikel zeigen wir Ihnen, wie Sie ERPNext auf CentOS 8 installieren auf einem unserer optimierten ERPNext-Hosting-Server.

Voraussetzungen:

Stellen Sie sicher, dass Ihr Server die folgenden Anforderungen erfüllt.

  • 2 GB RAM oder mehr
  • 2 oder mehr CPU-Kerne
  • Neue CentOS 8-Installation
  • Voller Root-Zugriff

Vorbereiten und Aktualisieren des Systems und Installieren der Abhängigkeiten

Melden Sie sich über SSH bei Ihrem Server an:

ssh username@server_ip

Bevor Sie mit der Installation von ERPNext beginnen, sollten Sie die Systempakete auf die neuesten Versionen aktualisieren.

sudo yum update -y

Installieren Sie das Repository für zusätzliche Pakete:

sudo yum install -y epel-release

Wir können ERPNext auf zwei Umgebungen einrichten, Entwicklung und Produktion. Für die Entwicklungsumgebung wird no Nginx installed sein und Sie müssen ERPNext manuell starten. Für eine Produktionsumgebung ist  Nginx is installed und der Prozess wird von supervisor verwaltet . Später in diesem Tutorial erfahren Sie mehr über den Supervisor.

Bei der Installation in einer Produktionsumgebung müssen wir sicherstellen, dass wir Apache uninstall Apache zuerst, da das Installationsskript Nginx einrichtet. Es wird auch empfohlen, MariaDB zu uninstall Apache um Konflikte während der Installation sowohl für die Produktion als auch für die Entwicklung zu vermeiden. Für eine Entwicklungsumgebung ist es sicher, Apache installiert und ausgeführt zu lassen, da Nginx nicht installiert wird.

Stoppen und Deinstallieren von Apache (required for production set up only) :

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

So stoppen und deinstallieren Sie 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

Installieren Sie die erforderlichen Pakete zusammen mit MariaDB, Nginx, NodeJS, redis:

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

Garnpaket-Manager installieren:

sudo npm install -g yarn

SELinux deaktivieren

Um die Einrichtung eines komplexen SELinux-Regelsatzes zu vermeiden, müssten wir ihn deaktivieren. Das Deaktivieren von SELinux unter CentOS 7 ist eine ziemlich einfache Aufgabe. Sie können das mit einem Befehl tun:

echo 0 > /selinux/enforce

Alternativ können Sie auch folgenden Befehl verwenden:

setenforce 0

Überprüfen Sie jetzt den Status erneut und vergewissern Sie sich, dass er deaktiviert ist.

Bitte beachten Sie, dass dies SELinux nur vorübergehend deaktiviert. Wenn Sie es dauerhaft deaktivieren möchten, müssen Sie die folgenden Schritte ausführen:

Öffnen Sie /etc/sysconfig/selinux Datei zur Bearbeitung mit einem Texteditor Ihrer Wahl. Wir werden vim verwenden im Beispiel unten.

vim /etc/sysconfig/selinux

Sobald Sie die Datei öffnen, ändern Sie die folgende Zeile:

SELINUX=enforcing

zu

SELINUX=disabled

Dann speichern und schließen Sie die Datei.

ERPNext installieren

ERPNext-Benutzer erstellen

Nachdem wir die erforderlichen Pakete installiert haben, können wir mit der Installation von ERPNext beginnen.

Wir bräuchten einen Benutzer, der der ERPNext-Instanz zugeordnet ist und Sudo-Zugriff hat:

sudo useradd -m erp -G wheel

Die Standard-Sudo-Einstellungen erfordern, dass wir das Passwort eingeben, wenn wir den Befehl ausgeben. Sie können das vermeiden mit:

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

Wir müssen zusätzliche Kernelparameter setzen:

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

Wir müssen einen Neustart durchführen, damit die Kernel-Einstellungen wirksam werden.

MariaDB (MySQL-Fork) für ERPNext konfigurieren

Im Gegensatz zu anderen ERP-Anwendungen unterstützt ERPNext MariaDB, um den persistenten Teil der Daten zu speichern. Zuvor haben wir die neueste verfügbare Version von MariaDB für CentOS 8 installiert und müssen sie jetzt für ERPNext konfigurieren.

Erstellen Sie eine Konfigurationsdatei für ERPNext for 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]

Standardzeichensatz =utf8mb4 EOF

Aktivieren und starten Sie den MariaDB-Dienst:

sudo systemctl enable mariadb
sudo systemctl start mariadb

Starten Sie das sichere MariaDB-Installationsskript (stellen Sie sicher, dass Sie sich das MariaDB-Root-Passwort merken). Verwenden Sie außerdem immer ein sicheres Passwort, wenn Sie dazu aufgefordert werden:

sudo mysql_secure_installation

ERPNext installieren

Wir installieren ERPNext unter dem neuen Benutzer, den wir erstellt haben, erp.

Wechseln Sie zum ERPNext-Benutzer und ändern Sie das Arbeitsverzeichnis in sein Home-Verzeichnis:

su - erp

frappe-bench mit pip3 installieren und version-12 initialisieren:

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

Wenn die Initialisierung abgeschlossen ist, erhalten Sie die folgende Meldung:

SUCCESS: Bench frappe-bench initialized

Mit der initialisierten Frappe-Bench können wir eine neue Frappe-Site für unsere ERPNext-Instanz erstellen.

Wir müssen den Frappe-Entwicklungsserver starten:

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

Wir müssen eine neue Website mit unserem Domain-/Subdomain-Namen erstellen:

bench new-site erp.rosehosting.com

Wir erhalten eine Aufforderung zur Eingabe des MySQL-Passworts, das wir zuvor eingegeben haben. Geben Sie das MySQL-Root-Passwort ein.

Jetzt können wir ERPNext via Bench herunterladen und installieren.

Laden Sie zuerst die neueste ERPNext-Version mit Bank herunter:

bench get-app erpnext --branch version-12

Installieren Sie es nach dem Herunterladen:

bench install-app erpnext

Jetzt können wir starten und ERPNext verwenden

ERPNext starten

In einer Entwicklungsumgebung muss die ERPNext-Anwendung manuell gestartet werden. Die ERPNext-Anwendung überwacht Port 8000.

Entwicklung

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

Sie können jetzt auf Ihr Setup zugreifen unter:

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

Produktion

Irgendwann möchten wir ERPNext im Produktionsmodus haben.

Dafür müssten wir Produktionsdateien für Supervisor und Nginx erstellen:

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

Fügen Sie einen Link der neu erstellten Konfigurationsdateien zu ihren jeweiligen Diensten hinzu:

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

Ändern Sie den Eigentümer des nginx-Prozesses in erp, indem Sie /etc/nginx/conf/nginx.conf bearbeiten und Ändern der Benutzerdirektive in:

user erp erp;

Supervisor ist ein Prozesssteuerungssystem, mit dem Sie Prozesse auf Linux-Systemen überwachen und steuern können. Wenn Supervisor ausgeführt wird, startet er die Anwendung automatisch beim Booten und verarbeitet Prozessfehler. Das Installationsskript konfiguriert automatisch Supervisor für Ihre ERPNext-Anwendung.

Jetzt können Sie Supervisor und Nginx aktivieren und starten:

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

Sie können sich jetzt bei Ihrer Produktions-Website anmelden without using port 8000 zu verwenden da der Nginx-Webserver bereits als Reverse-Proxy für Port 8000 konfiguriert ist.

Nachdem Sie sich angemeldet haben, sollten Sie nun in der Lage sein, die Ersteinrichtung Ihrer ERPNext-Anwendung abzuschließen.

Natürlich müssen Sie ERPNext auf CentOS 8 nicht installieren wenn Sie eine ERPNext VPS bei uns haben. Sie können einfach unser Support-Team bitten, ERPNext auf CentOS 8 für Sie zu installieren. Sie sind rund um die Uhr verfügbar und können Ihnen bei der Installation helfen.

PS . Wenn Ihnen dieser Blogbeitrag über die Installation von ERPNext auf CentOS 8 gefallen hat, können Sie ihn gerne über die folgenden Verknüpfungen in sozialen Netzwerken teilen oder einfach einen Kommentar hinterlassen. Danke.


Cent OS
  1. So installieren Sie Vagrant unter CentOS 7

  2. So installieren Sie Gitea unter CentOS 8

  3. So installieren Sie Memcached auf CentOS 8

  4. So installieren Sie ownCloud auf CentOS 8

  5. So installieren Sie ERPNext auf CentOS 7

So installieren Sie Jenkins unter CentOS 8

So installieren Sie Zoom unter CentOS 8

So installieren Sie Nethogs auf CentOS

So installieren Sie Yourls in CentOS 8

So installieren Sie SuiteCRM auf CentOS 8

So installieren Sie Minikube unter CentOS 8