Kako instalirati ERPNext Open Source ERP na CentOS 7

ERP ili Enterprise Resource Planning je paket poslovnih aplikacija koji se koristi za upravljanje osnovnim poslovnim procesima. ERPNext je besplatna ERP aplikacija otvorenog koda napisana na Pythonu. Koristi Node.js za prednji kraj i MariaDB za pohranu svojih podataka. ERPNext pruža web sučelje jednostavno za korištenje koje tvrtkama omogućuje upravljanje svakodnevnim zadacima. Sadrži module za računovodstvo, CRM, HRM, proizvodnju, POS, upravljanje projektima, nabavu, upravljanje prodajom, upravljanje skladištem i još mnogo toga. ERPNext se može koristiti za upravljanje različitim industrijama kao što su pružatelji usluga, proizvodnja, maloprodaja i škole.

U ovom vodiču instalirat ćemo ERPNext na CentOS 7.

Preduvjeti

  • Instanca poslužitelja Vultr CentOS 7.
  • Korisnik sudoa .

Za ovaj vodič koristit ćemo erp.example.comkao ime domene usmjereno na poslužitelj. Svakako zamijenite sva pojavljivanja erp.example.comsa svojim stvarnim imenom domene.

Ažurirajte svoj osnovni sustav pomoću vodiča " Kako ažurirati CentOS 7 ". Nakon što se vaš sustav ažurira, nastavite s instalacijom Pythona.

Instalirajte razvojne alate

ERPNext treba Python verziju 2.7 za rad. Python 2.7 instaliran je prema zadanim postavkama u svim instancama poslužitelja CentOS. Možete provjeriti je li instalirana verzija Pythona tako da pokrenete:

python -V

Trebali biste dobiti sličan izlaz.

[user@vultr ~]$ python -V
Python 2.7.5

Iako instalirana verzija Pythona nije najnovija, radi bez problema. Promjena zadane verzije Pythona može narušiti YUM.

Instalirajte pakete u Development toolsgrupi koji su potrebni za sastavljanje instalacijskih datoteka.

sudo yum groupinstall -y "Development tools"

Instalirajte još nekoliko ovisnosti:

sudo yum install -y redhat-lsb-core git python-setuptools python-devel openssl-devel libffi-devel

Instalirajte Pythonov pipalat. Pip je upravitelj ovisnosti za Python pakete.

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

Gornja naredba će instalirati Pip na vaš sustav. Kako biste bili sigurni da imate najnoviju verziju pipi setuptools, pokrenite:

sudo pip install --upgrade pip setuptools

Instalirajte Ansible koristeći Pip. Ansible automatizira osiguravanje softvera, upravljanje konfiguracijom i implementaciju aplikacija.

sudo pip install ansible

Instalirajte MariaDB poslužitelj

MariaDB je fork MySQL poslužitelja baze podataka. Instalirajte MariaDB pokretanjem.

sudo yum -y install mariadb mariadb-server mysql-devel

Mehanizam za pohranu Barracuda potreban je za stvaranje ERPNext baza podataka, stoga ćete morati konfigurirati MariaDB za korištenje Barracuda mehanizma za pohranu. Uredite zadanu MariaDB konfiguracijsku datoteku my.cnf.

sudo nano /etc/my.cnf

Dodajte sljedeće retke ispod symbolic-links=0crte.

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

Pokrenite MariaDB i omogućite mu automatsko pokretanje prilikom pokretanja.

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Prije konfiguriranja baze podataka, morat ćete osigurati MariaDB. Možete ga osigurati pokretanjem mysql_secure_installationskripte:

sudo mysql_secure_installation

Od vas će se tražiti trenutna MariaDB root lozinka. Prema zadanim postavkama, na MariaDB nije postavljena root lozinka. Pritisnite tipku "Enter" za nastavak. Postavite jaku lozinku za root korisnika vašeg MariaDB poslužitelja i odgovorite "Y" na sva druga pitanja koja se postavljaju. Postavljena pitanja su sama po sebi razumljiva.

Instalirajte Nginx, Nodejs i Redis

Kako je EPEL repozitorij instaliran prema zadanim postavkama u svim instancama Vultr CentOS 7, možete izravno instalirati Redis i Nginx. Ali da biste instalirali najnoviju verziju Node.js, morat ćete dodati spremište Nodesource u svoj sustav.

Dodajte spremište Nodesource za Node.js 8.x.

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

Instalirajte Nginx, Nodejs i Redis:

sudo yum -y install nginx nodejs redis

Pokrenite Nginx i omogućite mu pokretanje prilikom pokretanja tako što ćete pokrenuti:

sudo systemctl start nginx
sudo systemctl enable nginx

Pokrenite Redis i omogućite mu pokretanje prilikom pokretanja tako što ćete pokrenuti:

sudo systemctl start redis
sudo systemctl enable redis

Instalirajte PDF Converter

wkhtmltopdfProgram je alat naredbenog retka koji pretvara HTML u PDF pomoću QT WebKit renderiranje motor. Instalirajte potrebne ovisnosti:

sudo yum -y install libXrender libXext xorg-x11-fonts-75dpi xorg-x11-fonts-Type1

Preuzmite najnoviju verziju wkhtmltopdf.

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

Izvucite arhivu pokretanjem:

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

Gornja naredba će izdvojiti arhivu u /opt/wkhtmltox. Stvaranje softlink tako da wkhtmltopdfi wkhtmltoimagemože se izvršiti na globalnoj razini kao zapovijed.

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

Sada možete pokrenuti wkhtmltopdf -Vnaredbu da provjerite radi li, vidjet ćete:

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

U ovom trenutku imamo instalirane sve potrebne ovisnosti. Sada možete nastaviti s instaliranjem Bench-a.

Instalirajte Bench

Benchje uslužni program naredbenog retka koji pruža Frappe za instalaciju i upravljanje aplikacijom ERPNext na sustavu temeljenom na Unixu za razvojne i proizvodne svrhe. Bench također može kreirati i upravljati Nginxom i konfiguracijom nadzora.

Stvorite novog korisnika za pokretanje Bench procesa u izoliranom okruženju.

sudo adduser bench -d /opt/bench

Promijenite lozinku korisnika.

sudo passwd bench

Omogućite korisniku sudodopuštenja bench.

sudo usermod -aG wheel bench

Prijavite se kao novokreirani benchkorisnik:

sudo su - bench

Klonirajte spremište Bench u /opt/bench:

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

Instalirajte Bench pomoću pip.

sudo pip install -e bench-repo

Nakon što je Bench instaliran, nastavite dalje da instalirate ERPNext pomoću Bench-a.

Instalirajte ERPNext pomoću Bench-a

Inicijalizirajte bench direktorij s instaliranim Frappe frameworkom. Kako bi sve bilo uredno, radit ćemo po /opt/benchimeniku. Bench će također postaviti redovite sigurnosne kopije i automatska ažuriranja jednom dnevno.

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

Izradite novu Frappe stranicu:

bench new-site erp.example.com

Gornja naredba će od vas zatražiti MySQL root lozinku. Navedite lozinku koju ste ranije postavili za MySQL root korisnika. Također će od vas tražiti da postavite novu lozinku za administratorski račun. Ova će vam lozinka trebati kasnije za prijavu na administratorsku nadzornu ploču.

Preuzmite ERPNext instalacijske datoteke iz udaljenog git repozitorija koristeći Bench.

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

Instalirajte ERPNext na svoju novostvorenu stranicu:

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

ERPNext je instaliran na vašem poslužitelju. Možete odmah pokrenuti aplikaciju kako biste provjerili je li aplikacija uspješno pokrenuta:

bench start

Međutim, trebali biste zaustaviti izvršenje i nastaviti dalje za postavljanje aplikacije za proizvodnu upotrebu.

Nadzornik postavljanja i Nginx

Prema zadanim postavkama, aplikacija ERPNext sluša port 8000, a ne standardni HTTP port 80. Također se ne preporučuje pokretanje ugrađenog web poslužitelja za proizvodnu upotrebu jer ćemo izložiti poslužitelj svijetu. Stoga biste trebali koristiti proizvodni web poslužitelj kao obrnuti proxy kao što je Apache ili Nginx. U ovom vodiču koristit ćemo Nginx kao obrnuti proxy jer se može automatski konfigurirati pomoću Bench-a. Bench može automatski generirati i instalirati konfiguraciju prema ERPNext postavci.

Iako možemo pokrenuti aplikaciju pomoću gornje naredbe, izvršavanje ERPNext će se zaustaviti čim zatvorite terminal. Da biste prevladali ovaj problem, preporučam korištenje Supervisora ​​koji je vrlo koristan u kontinuiranom izvođenju aplikacije u proizvodnom okruženju. Supervizor je sustav kontrole procesa koji vam omogućuje praćenje i kontrolu brojnih procesa na Linux operativnim sustavima. Nakon što je Supervizor konfiguriran, automatski će pokrenuti aplikaciju u vrijeme pokretanja, kao i u slučaju kvarova. Bench može automatski konfigurirati Supervisor za ERPNext aplikaciju.

Instaliraj nadzornika:

sudo yum -y install supervisor

Pokrenite Supervisor i omogućite mu automatsko pokretanje prilikom pokretanja:

sudo systemctl start supervisord
sudo systemctl enable supervisord

Klupa za postavljanje za proizvodnu upotrebu:

 sudo bench setup production bench

Gornja naredba može od vas zatražiti prije zamjene postojeće zadane konfiguracijske datoteke Supervizora novom. Odaberite ynastaviti. Bench dodaje niz procesa u konfiguracijsku datoteku Supervisora. Gornja naredba će vas također pitati želite li zamijeniti trenutnu Nginx konfiguraciju novom. Unesite yza nastavak. Nakon što Bench završi instalaciju konfiguracije, omogućite drugim korisnicima da izvrše datoteke u vašem početnom direktoriju korisnika Bench-a.

chmod o+x /opt/bench/

Ako koristite vatrozid na svom poslužitelju, morat ćete konfigurirati vatrozid da postavi iznimku za HTTP uslugu. Dopustite Nginx obrnutom proxyju da se poveže izvan mreže.

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

Sada možete pristupiti stranici na http://erp.example.com.

Status procesa možete provjeriti pokretanjem:

sudo supervisorctl status all

Trebali biste vidjeti sljedeći izlaz:

[bench@vultr ~]$ sudo supervisorctl status all
erpnext-redis:erpnext-redis-cache                 RUNNING   pid 2554, uptime 1:06:58
erpnext-redis:erpnext-redis-queue                 RUNNING   pid 2553, uptime 1:06:58
erpnext-redis:erpnext-redis-socketio              RUNNING   pid 2555, uptime 1:06:58
erpnext-web:erpnext-frappe-web                    RUNNING   pid 2559, uptime 1:06:58
erpnext-web:erpnext-node-socketio                 RUNNING   pid 2556, uptime 1:06:58
erpnext-workers:erpnext-frappe-default-worker-0   RUNNING   pid 2549, uptime 1:06:58
erpnext-workers:erpnext-frappe-long-worker-0      RUNNING   pid 2551, uptime 1:06:58
erpnext-workers:erpnext-frappe-schedule           RUNNING   pid 2550, uptime 1:06:58
erpnext-workers:erpnext-frappe-short-worker-0     RUNNING   pid 2552, uptime 1:06:58

Da biste zaustavili sve ERPNext procese, koristite:

sudo supervisorctl stop all

Za pokretanje svih ERPNext procesa koristite:

sudo supervisorctl start all

Postavljanje SSL-a pomoću Let's Encrypt

Let's Encrypt korisnicima pruža besplatne SSL certifikate. SSL se može instalirati ručno ili automatski putem Bench-a. Bench može automatski instalirati Let's Encrypt klijent i dobiti certifikate. Osim toga, automatski ažurira konfiguraciju Nginxa za korištenje certifikata.

The domain name which you are using to obtain the certificates from the Let's Encrypt CA must be pointed towards the server. The client verifies the domain authority before issuing the certificates.

Omogućite višenamjensko korištenje DNS-a za aplikaciju ERPNext.

bench config dns_multitenant on

Pokrenite Bench da biste postavili Let's Encrypt na svoju web-lokaciju:

sudo bench setup lets-encrypt erp.example.com

Tijekom izvršavanja skripte, Let's Encrypt klijent će od vas tražiti da privremeno zaustavite Nginx web poslužitelj. Automatski će instalirati potrebne pakete i Let's Encrypt klijenta. Klijent će zatražiti vašu adresu e-pošte. Također ćete morati prihvatiti uvjete i odredbe. Nakon što su certifikati generirani, Bench će također generirati novu konfiguraciju za Nginx koji koristi SSL certifikate. Bit ćete upitani prije zamjene postojeće konfiguracije. Bench također kreira crontabunos za automatsko obnavljanje certifikata svaki mjesec.

Konačno, omogućite planeru za automatsko pokretanje zakazanih poslova:

bench enable-scheduler

Trebali biste vidjeti:

[bench@vultr erpnext]$ bench enable-scheduler
Enabled for erp.example.com

Završavati

Nakon što je proces završen, svojoj aplikaciji možete pristupiti na https://erp.example.com. Prijavite se s korisničkim imenom Administratori lozinkom koje ste postavili tijekom instalacije. Bit ćete odvedeni do stola gdje ćete morati dati informacije za postavljanje ERPNext ERP-a prema vašoj tvrtki. Sada možete koristiti aplikaciju za upravljanje svojom tvrtkom.

Čestitamo, imate potpuno funkcionalnu ERPNext aplikaciju instaliranu na vašem CentOS 7 poslužitelju.


Instalirajte Plesk na CentOS 7

Instalirajte Plesk na CentOS 7

Korištenje drugog sustava? Plesk je vlasnička upravljačka ploča web hosta koja omogućuje korisnicima da administriraju svoje osobne i/ili klijentske web stranice, baze podataka

Kako instalirati Squid proxy na CentOS

Kako instalirati Squid proxy na CentOS

Squid je popularan besplatni program za Linux koji vam omogućuje stvaranje web proxyja za prosljeđivanje. U ovom vodiču vidjet ćete kako instalirati Squid na CentOS da vas preokrene

Kako instalirati Lighttpd (LLMP Stack) na CentOS 6

Kako instalirati Lighttpd (LLMP Stack) na CentOS 6

Uvod Lighttpd je fork Apachea koji ima za cilj da bude puno manje intenzivan prema resursima. Lagan je, otuda mu i naziv, i prilično je jednostavan za korištenje. Instaliraj

Konfiguriranje statičkog umrežavanja i IPv6 na CentOS 7

Konfiguriranje statičkog umrežavanja i IPv6 na CentOS 7

VULTR je nedavno napravio promjene na svojoj strani i sada bi sve trebalo raditi dobro iz kutije s omogućenim NetworkManagerom. Želite li onemogućiti

Promjena Icinga2 za korištenje modela Master/Client na CentOS 6 ili CentOS 7

Promjena Icinga2 za korištenje modela Master/Client na CentOS 6 ili CentOS 7

Icinga2 je moćan sustav nadzora, a kada se koristi u modelu master-client, može zamijeniti potrebu za provjerama praćenja na temelju NRPE. Glavni klijent

Kako instalirati Apache Cassandra 3.11.x na CentOS 7

Kako instalirati Apache Cassandra 3.11.x na CentOS 7

Korištenje drugog sustava? Apache Cassandra je besplatni i otvorenog koda NoSQL sustav upravljanja bazom podataka koji je osmišljen kako bi osigurao skalabilnost, visoku

Kako instalirati Microweber na CentOS 7

Kako instalirati Microweber na CentOS 7

Korištenje drugog sustava? Microweber je CMS i internetska trgovina otvorenog koda povuci i ispusti. Izvorni kod Microwebera nalazi se na GitHubu. Ovaj vodič će vam pokazati

Kako instalirati Mattermost 4.1 na CentOS 7

Kako instalirati Mattermost 4.1 na CentOS 7

Korištenje drugog sustava? Mattermost je open source alternativa Slack SAAS servisu za razmjenu poruka. Drugim riječima, s Mattermostom možete ca

Stvaranje mreže Minecraft poslužitelja s BungeeCord na Debian 8, Debian 9 ili CentOS 7

Stvaranje mreže Minecraft poslužitelja s BungeeCord na Debian 8, Debian 9 ili CentOS 7

Što vam treba Vultr VPS s najmanje 1 GB RAM-a. SSH pristup (s root/administrativnim privilegijama). Korak 1: Instalacija BungeeCord-a Najprije

Omogućava šifriranje na Plesku

Omogućava šifriranje na Plesku

Upravljačka ploča Plesk ima vrlo lijepu integraciju za Lets Encrypt. Lets Encrypt je jedan od jedinih SSL pružatelja usluga koji u potpunosti izdaju certifikate

Omogućuje šifriranje na cPanelu

Omogućuje šifriranje na cPanelu

Lets Encrypt je tijelo za izdavanje certifikata posvećeno besplatnom pružanju SSL certifikata. cPanel je izgradio urednu integraciju tako da vi i vaš klijent

Kako instalirati Concrete5 na CentOS 7

Kako instalirati Concrete5 na CentOS 7

Korištenje drugog sustava? Concrete5 je CMS otvorenog koda koji nudi mnoge osebujne i korisne značajke koje pomažu urednicima u jednostavnoj proizvodnji sadržaja i

Kako instalirati ploču za pregled na CentOS 7

Kako instalirati ploču za pregled na CentOS 7

Korištenje drugog sustava? Review Board je besplatan alat otvorenog koda za pregled izvornog koda, dokumentacije, slika i još mnogo toga. To je web-bazirani softver

Postavite HTTP autentifikaciju pomoću Nginxa na CentOS 7

Postavite HTTP autentifikaciju pomoću Nginxa na CentOS 7

U ovom vodiču naučit ćete kako postaviti HTTP autentifikaciju za Nginx web poslužitelj koji radi na CentOS 7. Zahtjevi Da biste započeli, trebat će vam

Kako instalirati YOURLS na CentOS 7

Kako instalirati YOURLS na CentOS 7

YOURLS (Your Own URL Shortener) je aplikacija za skraćivanje URL-ova otvorenog koda i analizu podataka. U ovom članku ćemo pokriti proces instalacije

Kako instalirati i konfigurirati ArangoDB na CentOS 7

Kako instalirati i konfigurirati ArangoDB na CentOS 7

Korištenje drugog sustava? Uvod ArangoDB je NoSQL baza podataka otvorenog koda s fleksibilnim modelom podataka za dokumente, grafikone i ključ-vrijednosti. to je

Korištenje Etckeepera za kontrolu verzija /etc

Korištenje Etckeepera za kontrolu verzija /etc

Uvod Direktorij /etc/ igra ključnu ulogu u načinu na koji Linux sustav funkcionira. Razlog tome je što je gotovo svaka konfiguracija sustava

Zašto biste trebali koristiti SSHFS? Kako montirati udaljeni datotečni sustav sa SSHFS na CentOS 6

Zašto biste trebali koristiti SSHFS? Kako montirati udaljeni datotečni sustav sa SSHFS na CentOS 6

Mnogi administratori sustava upravljaju velikim količinama poslužitelja. Kada se datotekama treba pristupiti na različitim poslužiteljima, prijava na svaki pojedinačno ca

Postavljanje poslužitelja Half Life 2 na CentOS 6

Postavljanje poslužitelja Half Life 2 na CentOS 6

Ovaj vodič će pokriti proces instaliranja poslužitelja za igre Half Life 2 na sustavu CentOS 6. Korak 1: Instaliranje preduvjeta Kako biste postavili ou

Kako instalirati Laravel GitScrum na CentOS 7

Kako instalirati Laravel GitScrum na CentOS 7

Laravel GitScrum ili GitScrum je alat za produktivnost otvorenog koda dizajniran da pomogne razvojnim timovima da implementiraju Scrum metodologiju na sličan način.

Uspon strojeva: primjene AI u stvarnom svijetu

Uspon strojeva: primjene AI u stvarnom svijetu

Umjetna inteligencija nije u budućnosti, ovdje je upravo u sadašnjosti. U ovom blogu Pročitajte kako su aplikacije umjetne inteligencije utjecale na različite sektore.

DDOS napadi: kratak pregled

DDOS napadi: kratak pregled

Jeste li i vi žrtva DDOS napada i zbunjeni ste metodama prevencije? Pročitajte ovaj članak kako biste riješili svoje upite.

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Možda ste čuli da hakeri zarađuju mnogo novca, ali jeste li se ikada zapitali kako zarađuju toliki novac? raspravimo.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Želite li vidjeti revolucionarne izume Googlea i kako su ti izumi promijenili život svakog čovjeka danas? Zatim čitajte na blogu kako biste vidjeli Googleove izume.

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Koncept samovozećih automobila koji će krenuti na ceste uz pomoć umjetne inteligencije san je koji već neko vrijeme imamo. No, unatoč nekoliko obećanja, nigdje ih nema. Pročitajte ovaj blog kako biste saznali više…

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Kako se znanost razvija velikom brzinom, preuzimajući mnoge naše napore, raste i rizik da se podvrgnemo neobjašnjivoj Singularnosti. Pročitajte što bi za nas mogla značiti singularnost.

Evolucija pohrane podataka – Infografika

Evolucija pohrane podataka – Infografika

Metode pohrane podataka su se razvijale možda od rođenja podataka. Ovaj blog pokriva evoluciju pohrane podataka na temelju infografike.

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Pročitajte blog kako biste na najjednostavniji način upoznali različite slojeve u arhitekturi velikih podataka i njihove funkcionalnosti.

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

U ovom digitalnom svijetu, pametni kućni uređaji postali su ključni dio života. Evo nekoliko nevjerojatnih prednosti pametnih kućnih uređaja o tome kako naš život čine vrijednim življenja i jednostavnijim.

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Nedavno je Apple izdao macOS Catalina 10.15.4 dodatak ažuriranju kako bi riješio probleme, ali čini se da ažuriranje uzrokuje više problema koji dovode do zalijevanja mac strojeva. Pročitajte ovaj članak da biste saznali više