Ako nainštalovať ERPNext Open Source ERP na Ubuntu 17.04

ERP alebo Enterprise Resource Planning je balík podnikových aplikácií, ktorý sa používa na riadenie kľúčových obchodných procesov. ERPNext je bezplatná a open source aplikácia ERP s vlastným hosťovaním napísaná v jazyku Python. Používa Node.js pre frontend a MariaDB na ukladanie svojich údajov. ERPNext poskytuje ľahko použiteľné webové rozhranie, ktoré umožňuje podnikom spravovať každodenné úlohy. Obsahuje moduly pre účtovníctvo, CRM, HRM, výrobu, POS, projektový manažment, nákup, riadenie predaja, skladové hospodárstvo a ďalšie. ERPNext možno použiť na riadenie rôznych odvetví, ako sú poskytovatelia služieb, výroba, maloobchod a školy.

Predpoklady

Poznámka: V tomto návode budeme používať erp.example.comnázov domény smerujúci na server. Uistite sa, že ste všetky výskyty adresy nahradili erp.example.comskutočným názvom domény .

Skôr ako začneme, skontrolujte, či je váš server aktuálny.

sudo apt update
sudo apt -y upgrade

Nainštalujte vývojové nástroje

ERPNext potrebuje na fungovanie Python verzie 2.7. Nainštalujte Python 2.7.

sudo apt -y install python-minimal

Mali by ste byť schopní overiť jeho verziu.

python -V

Uvidíte nasledujúci výstup.

user@vultr:~$ python -V
Python 2.7.13

Nainštalujte niekoľko ďalších závislostí.

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

Nainštalujte pipnástroj Python . Pip je správca závislostí pre balíky Python.

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

Uistite sa, že máte najnovšiu verziu pipa setuptools.

sudo pip install --upgrade pip setuptools

Nainštalujte Ansible pomocou Pip. Ansible automatizuje poskytovanie softvéru, správu konfigurácie a nasadzovanie aplikácií.

sudo pip install ansible

Nainštalujte server MariaDB

Pridajte úložisko MariaDB do systému.

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'

Nainštalujte MariaDB.

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

Keď sa zobrazí výzva, zadajte silné heslo pre používateľa root MariaDB.

Na vytváranie databáz ERPNext je potrebný ukladací mechanizmus Barracuda, takže na používanie ukladacieho zariadenia Barracuda budete musieť nakonfigurovať MariaDB. Upravte predvolený konfiguračný súbor MariaDB my.cnf.

sudo nano /etc/mysql/my.cnf

Pridajte nasledujúce riadky pod [mysqld]riadok.

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

Pod [mysql]riadok pridajte aj nasledujúci riadok.

default-character-set = utf8mb4

Reštartujte MariaDB a povoľte jej automatické spustenie pri štarte.

sudo systemctl restart mariadb
sudo systemctl enable mariadb

Pred konfiguráciou databázy budete musieť zabezpečiť MariaDB. Môžete to zabezpečiť spustením mysql_secure_installationskriptu.

sudo mysql_secure_installation

Budete vyzvaní na zadanie aktuálneho root hesla MariaDB. Zadajte heslo, ktoré ste nastavili počas inštalácie. Zobrazí sa otázka, či chcete zmeniť existujúce heslo používateľa root vášho servera MariaDB. Nastavenie nového hesla môžete preskočiť, pretože silné heslo ste zadali už počas inštalácie. Na všetky ostatné otázky odpovedzte „Y“.

Nainštalujte Nginx, Node.js a Redis

Pridajte úložisko Nodesource pre Node.js 8.x.

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

Nainštalujte Nginx, Node.js a Redis.

sudo apt -y install nginx nodejs redis-server

Spustite Nginx a povoľte jeho spustenie v čase zavádzania.

sudo systemctl start nginx
sudo systemctl enable nginx

Spustite Redis a povoľte jej spustenie v čase zavádzania.

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

Nainštalujte PDF Converter

wkhtmltopdfProgram je nástroj pre príkazový riadok, ktorý prevádza HTML do PDF s použitím renderovací engine QT Webkit. Nainštalujte požadované závislosti.

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

Stiahnite si najnovšiu verziu wkhtmltopdf.

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

Rozbaľte archív.

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

The above command will extract the archive to /opt/wkhtmltox. Create a softlink so that wkhtmltopdf and wkhtmltoimage can be executed globally as a command.

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

You can now run wkhtmltopdf -V to check if it is working, you will see this.

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

At this point, we have all the required dependencies installed. You can now proceed to install Bench.

Install Bench

Bench is a command line utility provided by Frappe to install and manage the ERPNext application on a Unix-based system for both development and production purposes. Bench can also create and manage Nginx and supervisor configurations.

Create a new user to run Bench processes in the isolated environment.

sudo adduser bench --home /opt/bench

Provide sudo permissions to the bench user.

sudo usermod -aG sudo bench

Login as the newly created bench user.

sudo su - bench

Clone the Bench repository in /opt/bench.

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

Install Bench using pip.

sudo pip install -e bench-repo

Once Bench is installed, proceed further to install ERPNext using Bench.

Install ERPNext using Bench

Initialize a bench directory with frappe framework installed. To keep everything tidy, we will work under the /opt/bench directory. Bench will also setup regular backups and auto updates once a day.

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

Create a new Frappe site.

bench new-site erp.example.com

The above command will prompt you for the MySQL root password. Provide the password which you have set for the MySQL root user earlier. It will also ask you to set a new password for the administrator account. You will need this password later to log into the administrator dashboard.

Download ERPNext installation files from the remote git repository using Bench.

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

Install ERPNext on your newly created site.

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

You can start the application immediately to check if the application installed successfully.

bench start

However, you should stop the execution and proceed further to set up the application for production use.

Setup Supervisor and Nginx

By default, the ERPNext application listens on port 8000, not the standard HTTP port 80. Also, running the built in web server for production use is not recommended as we will be exposing the server to the world. You should use a production web server as a reverse proxy such as Apache or Nginx. We will use Nginx as a reverse proxy as it can be automatically configured using Bench. Bench can automatically generate and install the configuration according to the ERPNext setup.

Although we can start the application using the 'bench start' command, the execution of ERPNext will stop as soon as you close the terminal. To overcome this issue, you should use Supervisor, which is very helpful in running the application continuously in a production environment. Supervisor is a process control system that enables you to monitor and control a number of processes on Linux operating systems. Once Supervisor is configured, it will automatically start the application at boot time as well as on failures. Bench can automatically configure Supervisor for the ERPNext application.

Install Supervisor.

sudo apt -y install supervisor

Start Supervisor and enable it to automatically start at boot time.

sudo systemctl start supervisor
sudo systemctl enable supervisor

Setup Bench for production use.

 sudo bench setup production bench

Vyššie uvedený príkaz vás môže vyzvať pred nahradením existujúceho predvoleného konfiguračného súboru správcu novým. Vyberte ypokračovanie. Bench pridáva množstvo procesov do konfiguračného súboru Supervisor. Vyššie uvedený príkaz sa vás tiež opýta, či chcete nahradiť aktuálnu konfiguráciu Nginx novou. Ak ychcete pokračovať, zadajte . Keď Bench dokončí inštaláciu konfigurácie, poskytnite ostatným používateľom spustenie súborov vo vašom domovskom adresári používateľa Bench.

chmod o+x /opt/bench/

Teraz máte prístup na stránku na http://erp.example.com.

Stav procesov môžete skontrolovať spustením.

sudo supervisorctl status all

Mali by ste vidieť nasledujúci výstup.

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

Ak chcete zastaviť všetky procesy ERPNext.

sudo supervisorctl stop all

Spustenie všetkých procesov ERPNext.

sudo supervisorctl start all

Nastavenie SSL pomocou Let's Encrypt

Let's Encrypt poskytuje používateľom bezplatné certifikáty SSL. SSL je možné nainštalovať manuálne alebo automaticky cez Bench. Bench dokáže automaticky nainštalovať klienta Let's Encrypt a získať certifikáty. Okrem toho automaticky aktualizuje konfiguráciu Nginx na používanie certifikátov.

Názov domény, ktorý používate na získanie certifikátov od Let's Encrypt CA, musí smerovať k serveru. Klient pred vydaním certifikátov overí autoritu domény .

Povoľte multiprenájom DNS pre aplikáciu ERPNext.

bench config dns_multitenant on

Spustite nástroj Bench a nastavte Let's Encrypt na svojom webe.

sudo bench setup lets-encrypt erp.example.com

Počas vykonávania skriptu vás klient Let's Encrypt požiada o dočasné zastavenie webového servera Nginx. Automaticky nainštaluje potrebné balíčky a klienta Let's Encrypt. Klient vás vyzve na zadanie vašej e-mailovej adresy. Budete tiež musieť prijať zmluvné podmienky. Po vygenerovaní certifikátov Bench vygeneruje aj novú konfiguráciu pre Nginx, ktorá používa certifikáty SSL. Pred výmenou existujúcej konfigurácie sa zobrazí výzva. Bench tiež vytvorí crontabzáznam na automatickú obnovu certifikátov každý mesiac.

Nakoniec povoľte plánovaču, aby automaticky spúšťal naplánované úlohy.

bench enable-scheduler

Mali by ste vidieť tento výstup.

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

Záver

Po dokončení procesu môžete pristupovať k svojej aplikácii na adrese https://erp.example.com. Prihláste sa pomocou používateľského mena Administratora hesla, ktoré ste nastavili pri inštalácii. Dostanete sa k stolu, kde budete musieť poskytnúť informácie na nastavenie ERPNext ERP podľa vašej spoločnosti. Aplikáciu teraz môžete použiť na správu vašej spoločnosti.

Gratulujeme, na serveri Ubuntu 17.04 máte nainštalovanú plne funkčnú aplikáciu ERPNext.


Ako nainštalovať Memcached na Ubuntu 14.04

Ako nainštalovať Memcached na Ubuntu 14.04

Memcached je vysokovýkonný databázový systém, ktorý môže pomôcť naplniť vašu aplikáciu. Je to veľmi rýchle, pretože nezapisuje na disk, ale namiesto toho t

Inštalácia InfluxDB na Ubuntu 14

Inštalácia InfluxDB na Ubuntu 14

Úvod InfluxDB je open source, distribuovaná databáza časových radov bez externých závislostí. Áno, čítali ste odsek bez externých závislostí

Nastavte Fail2ban Ubuntu x64

Nastavte Fail2ban Ubuntu x64

Fail2ban je program, ktorý monitoruje prihlasovaciu aktivitu na vašom serveri a blokuje problematické IP adresy. V predvolenom nastavení zablokuje adresy IP na 10 minút

Ako nainštalovať Gitea na Debian 9

Ako nainštalovať Gitea na Debian 9

Používate iný systém? Gitea je alternatívny open source systém na správu verzií s vlastným hosťovaním, ktorý používa Git. Gitea je napísaná v Golangu a je

Ako nainštalovať Wiki.js na FreeBSD 11

Ako nainštalovať Wiki.js na FreeBSD 11

Používate iný systém? Wiki.js je bezplatná a open source moderná wiki aplikácia postavená na Node.js, MongoDB, Git a Markdown. Zdrojový kód Wiki.js je verejný

Ako nainštalovať Pagekit 1.0 CMS na FreeBSD 11 FAMP VPS

Ako nainštalovať Pagekit 1.0 CMS na FreeBSD 11 FAMP VPS

Používate iný systém? Pagekit 1.0 CMS je krásny, modulárny, rozšíriteľný a ľahký, bezplatný a open source systém na správu obsahu (CMS) s

Ako nainštalovať MODX Revolution na FreeBSD 11 FAMP VPS

Ako nainštalovať MODX Revolution na FreeBSD 11 FAMP VPS

Používate iný systém? MODX Revolution je rýchly, flexibilný, škálovateľný, open source podnikový systém správy obsahu (CMS) napísaný v PHP. To i

Ako nainštalovať Concrete5 na CentOS 7

Ako nainštalovať Concrete5 na CentOS 7

Používate iný systém? Concrete5 je open source CMS, ktorý ponúka mnoho charakteristických a užitočných funkcií, ktoré pomáhajú redaktorom jednoducho vytvárať obsah

Ako nainštalovať a nakonfigurovať ArangoDB na CentOS 7

Ako nainštalovať a nakonfigurovať ArangoDB na CentOS 7

Používate iný systém? Úvod ArangoDB je open source databáza NoSQL s flexibilným dátovým modelom pre dokumenty, grafy a hodnoty kľúča. to je

Ako nainštalovať Laravel GitScrum na CentOS 7

Ako nainštalovať Laravel GitScrum na CentOS 7

Laravel GitScrum alebo GitScrum je nástroj na zvýšenie produktivity s otvoreným zdrojom určený na pomoc vývojovým tímom implementovať metodiku Scrum podobným spôsobom.

Ako nainštalovať PowerDNS na CentOS

Ako nainštalovať PowerDNS na CentOS

Úvod V tomto návode Vultr sa naučíte, ako nainštalovať PowerDNS. PowerDNS je program na spustenie vlastných nameserverov. Je veľmi užitočné, keď

Ako nainštalovať Flarum Forum na FreeBSD 12

Ako nainštalovať Flarum Forum na FreeBSD 12

Používate iný systém? Flarum je bezplatný a otvorený softvér fóra novej generácie, vďaka ktorému je online diskusia zábavná. Zdrojový kód Flarum je hostovaný o

Nainštalujte WordPress na OpenBSD 6.2

Nainštalujte WordPress na OpenBSD 6.2

Úvod WordPress je dominantný redakčný systém na internete. Poháňa všetko od blogov až po zložité webové stránky s dynamickým obsahom

Ako nainštalovať Harbour na CentOS 7

Ako nainštalovať Harbour na CentOS 7

Harbor je open source server registrov podnikovej triedy, ktorý ukladá a distribuuje obrazy Docker. Harbor rozširuje open source Docker Distribution b

Ako nainštalovať Crate.IO na CentOS 7

Ako nainštalovať Crate.IO na CentOS 7

Crate.IO alebo Crate je open source škálovateľný dátový sklad orientovaný na dokumenty, ktorý kombinuje štandardné rozhranie SQL s Elasticsearch, čím vám prináša

Ako nainštalovať NextCloud 9 na CentOS 7

Ako nainštalovať NextCloud 9 na CentOS 7

NextCloud, ako už názov napovedá, je sľubnou alternatívou iného open source riešenia hostenia súborov OwnCloud. V tomto článku vám ukážem ho

Vyhľadajte malvér a vírusy na CentOS pomocou ClamAV a Linux Malware Detect

Vyhľadajte malvér a vírusy na CentOS pomocou ClamAV a Linux Malware Detect

Linux Malware Detect a ClamAV sú dva účinné nástroje na jednoduché vyhľadávanie škodlivého softvéru a vírusov na serveri VPS. V tomto článku nainštalujeme robota

Nainštalujte Apache Maven na Ubuntu 18.04

Nainštalujte Apache Maven na Ubuntu 18.04

Úvod Apache Maven je bezplatný a open source nástroj na riadenie projektov používaný pre projekty Java. Môžete jednoducho spravovať zostavovanie projektov, reporting, atď

Ako nainštalovať Subrion 4.1 CMS na FreeBSD 11 FAMP VPS

Ako nainštalovať Subrion 4.1 CMS na FreeBSD 11 FAMP VPS

Používate iný systém? Subrion 4.1 CMS je výkonný a flexibilný open source systém na správu obsahu (CMS), ktorý prináša intuitívny a prehľadný obsah

Nastavenie Munin pre monitorovanie na CentOS 6 x64

Nastavenie Munin pre monitorovanie na CentOS 6 x64

Munin je aplikácia na monitorovanie a stav servera, ktorá poskytuje dve súčasti: munin – Serverový komponent, v ktorom sa munin-node hlási. Tento program

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umelá inteligencia nie je v budúcnosti, je tu priamo v súčasnosti V tomto blogu si prečítajte, ako aplikácie umelej inteligencie ovplyvnili rôzne sektory.

Útoky DDOS: Stručný prehľad

Útoky DDOS: Stručný prehľad

Ste aj vy obeťou DDOS útokov a máte zmätok ohľadom metód prevencie? Ak chcete vyriešiť svoje otázky, prečítajte si tento článok.

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Možno ste už počuli, že hackeri zarábajú veľa peňazí, ale premýšľali ste niekedy nad tým, ako môžu zarábať také peniaze? poďme diskutovať.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Chcete vidieť revolučné vynálezy od Google a ako tieto vynálezy zmenili život každého dnešného človeka? Potom si prečítajte na blogu a pozrite si vynálezy spoločnosti Google.

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Koncept samoriadených áut vyraziť na cesty s pomocou umelej inteligencie je snom, ktorý máme už nejaký čas. Ale napriek niekoľkým prísľubom ich nikde nevidno. Prečítajte si tento blog a dozviete sa viac…

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Ako sa veda vyvíja rýchlym tempom a preberá veľa nášho úsilia, zvyšuje sa aj riziko, že sa vystavíme nevysvetliteľnej singularite. Prečítajte si, čo pre nás môže znamenať singularita.

Vývoj ukladania dát – Infografika

Vývoj ukladania dát – Infografika

Spôsoby ukladania údajov sa môžu vyvíjať už od zrodu údajov. Tento blog sa zaoberá vývojom ukladania údajov na základe infografiky.

Funkcionality vrstiev referenčnej architektúry veľkých dát

Funkcionality vrstiev referenčnej architektúry veľkých dát

Prečítajte si blog, aby ste čo najjednoduchším spôsobom spoznali rôzne vrstvy architektúry veľkých dát a ich funkcie.

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

V tomto digitálnom svete sa inteligentné domáce zariadenia stali kľúčovou súčasťou života. Tu je niekoľko úžasných výhod inteligentných domácich zariadení o tom, ako robia náš život, ktorý stojí za to žiť, a ktorý zjednodušujú.

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Spoločnosť Apple nedávno vydala doplnkovú aktualizáciu macOS Catalina 10.15.4 na opravu problémov, ale zdá sa, že táto aktualizácia spôsobuje ďalšie problémy, ktoré vedú k blokovaniu počítačov Mac. Prečítajte si tento článok a dozviete sa viac