Az ERPNext nyílt forráskódú ERP telepítése az Ubuntu 17.04 rendszeren

Az ERP vagy Enterprise Resource Planning egy vállalati alkalmazáscsomag, amelyet az alapvető üzleti folyamatok kezelésére használnak. Az ERPNext egy ingyenes, nyílt forráskódú, saját üzemeltetésű, Python nyelven írt ERP-alkalmazás. A Node.js-t használja a kezelőfelülethez, a MariaDB-t pedig az adatok tárolására. Az ERPNext egy könnyen használható webes felület, amely lehetővé teszi a vállalkozások számára a napi feladatok kezelését. Modulokat tartalmaz a könyveléshez, CRM-hez, HRM-hez, gyártáshoz, POS-hez, projektmenedzsmenthez, beszerzéshez, értékesítési menedzsmenthez, raktárkezeléshez stb. Az ERPNext különféle iparágak, például szolgáltatók, gyártás, kiskereskedelem és iskolák kezelésére használható.

Előfeltételek

Megjegyzés: Ebben az oktatóanyagban erp.example.coma kiszolgálóra mutató domain névként fogjuk használni . Kérjük, győződjön meg arról, hogy a(z) összes előfordulását cserélje erp.example.comki a tényleges domain nevére .

Mielőtt elkezdené, győződjön meg arról, hogy szervere naprakész.

sudo apt update
sudo apt -y upgrade

Telepítse a fejlesztőeszközöket

Az ERPNext működéséhez a Python 2.7-es verziója szükséges. Telepítse a Python 2.7-et.

sudo apt -y install python-minimal

Ellenőriznie kell a verzióját.

python -V

A következő kimenetet fogja látni.

user@vultr:~$ python -V
Python 2.7.13

Telepítsen még néhány függőséget.

sudo apt -y install git build-essential python-setuptools python-dev libffi-dev libssl-dev

Telepítse a Python pipeszközt. A Pip a Python-csomagok függőségi kezelője.

wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py

Győződjön meg arról, hogy a pipés a legújabb verziójával rendelkezik setuptools.

sudo pip install --upgrade pip setuptools

Telepítse az Ansible-t a Pip használatával. Az Ansible automatizálja a szoftverek kiépítését, a konfigurációkezelést és az alkalmazások telepítését.

sudo pip install ansible

Telepítse a MariaDB szervert

Adja hozzá a MariaDB adattárat a rendszerhez.

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mirror.nodesdirect.com/mariadb/repo/10.2/ubuntu xenial main'

Telepítse a MariaDB-t.

sudo apt update
sudo apt -y install mariadb-server libmysqlclient-dev

Ha kérik, adjon meg erős jelszót a MariaDB root felhasználó számára.

A Barracuda tárolómotor szükséges az ERPNext adatbázisok létrehozásához, ezért be kell állítania a MariaDB-t a Barracuda tárolómotor használatához. Szerkessze az alapértelmezett MariaDB konfigurációs fájlt my.cnf.

sudo nano /etc/mysql/my.cnf

Adja hozzá a következő sorokat a [mysqld]sor alá.

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

Ezenkívül adja hozzá a következő sort a [mysql]sor alá.

default-character-set = utf8mb4

Indítsa újra a MariaDB-t, és engedélyezze, hogy rendszerindításkor automatikusan elinduljon.

sudo systemctl restart mariadb
sudo systemctl enable mariadb

Az adatbázis konfigurálása előtt biztonságossá kell tennie a MariaDB-t. A mysql_secure_installationszkript futtatásával biztosíthatja .

sudo mysql_secure_installation

A rendszer kérni fogja a jelenlegi MariaDB root jelszót. Adja meg a telepítés során beállított jelszót. A rendszer megkérdezi, hogy módosítani szeretné-e a MariaDB szerver root felhasználójának meglévő jelszavát. Az új jelszó beállítását kihagyhatja, mivel a telepítés során már megadott egy erős jelszót. Válaszoljon "I"-vel az összes többi feltett kérdésre.

Telepítse az Nginxet, a Node.js-t és a Redis-t

Adja hozzá a Node.js 8.x Nodesource tárházát.

sudo curl --silent --location https://deb.nodesource.com/setup_8.x | sudo bash -

Telepítse az Nginxet, a Node.js-t és a Redis-t.

sudo apt -y install nginx nodejs redis-server

Indítsa el az Nginx-et, és engedélyezze az indulást a rendszerindításkor.

sudo systemctl start nginx
sudo systemctl enable nginx

Indítsa el a Redis-t, és engedélyezze az indulást a rendszerindításkor.

sudo systemctl start redis-server
sudo systemctl enable redis-server

Telepítse a PDF konvertert

A wkhtmltopdfprogram egy parancssori eszköz, amely a HTML-t PDF-be konvertálja a QT Webkit renderingmotor segítségével. Telepítse a szükséges függőségeket.

sudo apt -y install libxrender1 libxext6 xfonts-75dpi xfonts-base

Töltse le a legújabb verzióját wkhtmltopdf.

wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz

Bontsa ki az archívumot.

sudo tar -xf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz -C /opt

A fenti parancs kicsomagolja az archívumot ide /opt/wkhtmltox. Hozzon létre egy softlinket, hogy wkhtmltopdfés wkhtmltoimageglobálisan végrehajtható legyen parancsként.

sudo ln -s /opt/wkhtmltox/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
sudo ln -s /opt/wkhtmltox/bin/wkhtmltoimage /usr/bin/wkhtmltoimage

Most már futhat, wkhtmltopdf -Vhogy ellenőrizze, működik-e, ezt látni fogja.

user@vultr:~$ wkhtmltopdf -V
wkhtmltopdf 0.12.4 (with patched qt)

Ezen a ponton minden szükséges függőséget telepítettünk. Most folytathatja a Bench telepítését.

Telepítse a padot

BenchA Frappe által biztosított parancssori segédprogram az ERPNext alkalmazás telepítéséhez és kezeléséhez Unix-alapú rendszereken, fejlesztési és gyártási célokra egyaránt. A Bench Nginx és felügyelő konfigurációkat is létrehozhat és kezelhet.

Hozzon létre egy új felhasználót a bench-folyamatok futtatásához az elszigetelt környezetben.

sudo adduser bench --home /opt/bench

Adjon sudoengedélyeket a benchfelhasználónak.

sudo usermod -aG sudo bench

Jelentkezzen be újonnan létrehozott benchfelhasználóként.

sudo su - bench

Klónozza a Bench adattárat a /opt/bench.

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

Telepítse a padot a segítségével pip.

sudo pip install -e bench-repo

A Bench telepítése után folytassa az ERPNext telepítésével a Bench segítségével.

Telepítse az ERPNext programot a Bench segítségével

Inicializáljon egy asztali könyvtárat a telepített frappe keretrendszerrel. Hogy minden rendben legyen, a /opt/benchcímtár alatt fogunk dolgozni . A Bench rendszeres biztonsági mentéseket és automatikus frissítéseket is beállít naponta egyszer.

cd /opt/bench
bench init erpnext && cd erpnext

Hozzon létre egy új Frappe webhelyet.

bench new-site erp.example.com

A fenti parancs kéri a MySQL root jelszót. Adja meg azt a jelszót, amelyet korábban a MySQL root felhasználóhoz állított be. Azt is kérni fogja, hogy állítson be új jelszót a rendszergazdai fiókhoz. Erre a jelszóra később szüksége lesz a rendszergazdai műszerfalra való bejelentkezéshez .

Töltse le az ERPNext telepítő fájljait a távoli git tárolóból a Bench segítségével.

bench get-app erpnext https://github.com/frappe/erpnext

Telepítse az ERPNext programot az újonnan létrehozott webhelyére.

bench --site erp.example.com install-app erpnext

Azonnal elindíthatja az alkalmazást, hogy ellenőrizze, sikeresen telepítette-e az alkalmazást.

bench start

Azonban le kell állítania a végrehajtást, és tovább kell lépnie az alkalmazás éles használatra történő beállításához.

Setup Supervisor és Nginx

Alapértelmezés szerint az ERPNext alkalmazás a porton figyel 8000, nem a szabványos HTTP-porton 80. A beépített webszerver futtatása éles használatra sem ajánlott, mivel a szervert a világ elé tárjuk. Fordított proxyként éles webszervert kell használnia, például az Apache-t vagy az Nginxet. Az Nginxet fordított proxyként fogjuk használni, mivel a Bench segítségével automatikusan konfigurálható. A Bench automatikusan létrehozhatja és telepítheti a konfigurációt az ERPNext beállításának megfelelően.

Bár az alkalmazást a 'bench start' paranccsal is elindíthatjuk, az ERPNext végrehajtása leáll, amint bezárja a terminált. A probléma megoldásához használja a Supervisort, amely nagyon hasznos az alkalmazás éles környezetben való folyamatos futtatásához. A Supervisor egy folyamatvezérlő rendszer, amely lehetővé teszi számos folyamat megfigyelését és vezérlését Linux operációs rendszereken. A Supervisor konfigurálása után automatikusan elindítja az alkalmazást rendszerindításkor, valamint hiba esetén. A Bench automatikusan konfigurálja a Supervisort az ERPNext alkalmazáshoz.

Telepítse a Supervisort.

sudo apt -y install supervisor

Indítsa el a Supervisor alkalmazást, és engedélyezze, hogy rendszerindításkor automatikusan elinduljon.

sudo systemctl start supervisor
sudo systemctl enable supervisor

Setup Bench termelési használatra.

 sudo bench setup production bench

A fenti parancs kérheti, mielőtt lecserélné a meglévő Supervisor alapértelmezett konfigurációs fájlt egy újra. Válassza ya folytatást. A Bench számos folyamatot hozzáad a Supervisor konfigurációs fájlhoz. A fenti parancs azt is megkérdezi, hogy le kívánja-e cserélni a jelenlegi Nginx konfigurációt egy újra. A yfolytatáshoz lépjen be. Miután a Bench befejezte a konfiguráció telepítését, biztosítsa a többi felhasználónak, hogy a Bench felhasználó saját könyvtárában végrehajtsák a fájlokat.

chmod o+x /opt/bench/

Most már elérheti az oldalt a következő címen: http://erp.example.com.

A folyamatok állapotát futtatással ellenőrizheti.

sudo supervisorctl status all

A következő kimenetet kell látnia.

bench@vultr:~/erpnext$ sudo supervisorctl status all
erpnext-redis:erpnext-redis-cache                 RUNNING   pid 13852, uptime 0:00:54
erpnext-redis:erpnext-redis-queue                 RUNNING   pid 13851, uptime 0:00:54
erpnext-redis:erpnext-redis-socketio              RUNNING   pid 13853, uptime 0:00:54
erpnext-web:erpnext-frappe-web                    RUNNING   pid 13856, uptime 0:00:54
erpnext-web:erpnext-node-socketio                 RUNNING   pid 13855, uptime 0:00:54
erpnext-workers:erpnext-frappe-default-worker-0   RUNNING   pid 13862, uptime 0:00:54
erpnext-workers:erpnext-frappe-long-worker-0      RUNNING   pid 13870, uptime 0:00:54
erpnext-workers:erpnext-frappe-schedule           RUNNING   pid 13869, uptime 0:00:54
erpnext-workers:erpnext-frappe-short-worker-0     RUNNING   pid 13875, uptime 0:00:54

Az összes ERPNext folyamat leállítása.

sudo supervisorctl stop all

Az összes ERPNext folyamat elindításához.

sudo supervisorctl start all

Az SSL beállítása a Let's Encrypt segítségével

A Let's Encrypt ingyenes SSL-tanúsítványokat biztosít a felhasználóknak. Az SSL manuálisan vagy automatikusan telepíthető a Bench segítségével. A Bench képes automatikusan telepíteni a Let's Encrypt klienst, és megszerezni a tanúsítványokat. Ezenkívül automatikusan frissíti az Nginx konfigurációját a tanúsítványok használatához.

A tartománynévnek, amelyet a Let's Encrypt CA tanúsítványainak beszerzéséhez használ, a szerver felé kell mutatnia. Az ügyfél a tanúsítványok kiadása előtt ellenőrzi a tartomány jogosultságát .

Több DNS bérlés engedélyezése az ERPNext alkalmazás számára.

bench config dns_multitenant on

Futtassa a Bench alkalmazást a Let's Encrypt beállításához webhelyén.

sudo bench setup lets-encrypt erp.example.com

A szkript végrehajtása során a Let's Encrypt kliens kérni fogja, hogy ideiglenesen állítsa le az Nginx webszervert. Automatikusan telepíti a szükséges csomagokat és a Let's Encrypt klienst. Az ügyfél kérni fogja az e-mail címét. Ezenkívül el kell fogadnia a feltételeket. A tanúsítványok létrehozása után a Bench az SSL-tanúsítványokat használó Nginx új konfigurációját is létrehozza. A rendszer megkérdezi, mielőtt lecserélné a meglévő konfigurációt. A Bench egy crontabbejegyzést is létrehoz, amely minden hónapban automatikusan megújítja a tanúsítványokat.

Végül engedélyezze az ütemező számára az ütemezett jobok automatikus futtatását.

bench enable-scheduler

Ezt a kimenetet látnia kell.

bench@vultr:~/erpnext$ bench enable-scheduler
Enabled for erp.example.com

Következtetés

A folyamat befejezése után a következő címen érheti el jelentkezését https://erp.example.com. Jelentkezzen Administratorbe a telepítés során megadott felhasználónévvel és jelszóval. A pulthoz kerül, ahol meg kell adnia az ERPNext ERP-t a vállalatának megfelelően beállítani. Most már használhatja az alkalmazást cége kezeléséhez.

Gratulálunk, egy teljesen működő ERPNext alkalmazás van telepítve az Ubuntu 17.04 szerverére.

Hagyj kommentárt

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Ez az oktatóanyag végigvezeti Önt a Vultrs rendszerekkel kompatibilis Windows ISO létrehozásának folyamatán. Itt megtanulhatja az <>Windows ISO<> előállításának lépéseit az NTLite segítségével.

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.