Hvordan installere ERPNext Open Source ERP på Ubuntu 17.04

ERP eller Enterprise Resource Planning er en bedriftsapplikasjonspakke som brukes til å administrere kjernevirksomhetsprosesser. ERPNext er en gratis og åpen kildekode, selvdrevet ERP-applikasjon skrevet i Python. Den bruker Node.js for grensesnittet og MariaDB for å lagre dataene sine. ERPNext gir et brukervennlig webgrensesnitt som lar bedrifter administrere daglige oppgaver. Den inneholder moduler for regnskap, CRM, HRM, produksjon, POS, prosjektledelse, innkjøp, salgsledelse, lagerstyring og mer. ERPNext kan brukes til å administrere ulike bransjer som tjenesteleverandører, produksjon, detaljhandel og skoler.

Forutsetninger

  • En Vultr Ubuntu 17.04 serverforekomst.
  • En sudo-bruker .

Merk: For denne opplæringen vil vi bruke erp.example.comsom domenenavnet som pekte til serveren. Sørg for å erstatte alle forekomster av erp.example.commed ditt faktiske domenenavn .

Før vi begynner, sørg for at serveren din er oppdatert.

sudo apt update
sudo apt -y upgrade

Installer utviklingsverktøy

ERPNext trenger Python versjon 2.7 for å fungere. Installer Python 2.7.

sudo apt -y install python-minimal

Du bør være i stand til å bekrefte versjonen.

python -V

Du vil se følgende utgang.

user@vultr:~$ python -V
Python 2.7.13

Installer noen flere avhengigheter.

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

Installer Pythons pipverktøy. Pip er avhengighetsbehandleren for Python-pakker.

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

Sørg for at du har den nyeste versjonen av pipog setuptools.

sudo pip install --upgrade pip setuptools

Installer Ansible med Pip. Ansible automatiserer programvarelevering, konfigurasjonsadministrasjon og applikasjonsdistribusjon.

sudo pip install ansible

Installer MariaDB Server

Legg til MariaDB-depotet i systemet.

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'

Installer MariaDB.

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

Oppgi et sterkt passord for MariaDB-rotbrukeren når du blir bedt om det.

Barracuda-lagringsmotoren er nødvendig for å lage ERPNext-databaser, så du må konfigurere MariaDB til å bruke Barracuda-lagringsmotoren. Rediger standard MariaDB-konfigurasjonsfilen my.cnf.

sudo nano /etc/mysql/my.cnf

Legg til følgende linjer under [mysqld]linjen.

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

Legg også til følgende linje under [mysql]linjen.

default-character-set = utf8mb4

Start MariaDB på nytt og la den starte automatisk ved oppstart.

sudo systemctl restart mariadb
sudo systemctl enable mariadb

Før du konfigurerer databasen, må du sikre MariaDB. Du kan sikre det ved å kjøre mysql_secure_installationskriptet.

sudo mysql_secure_installation

Du vil bli bedt om det gjeldende MariaDB-rotpassordet. Oppgi passordet du har angitt under installasjonen. Du vil bli spurt om du ønsker å endre det eksisterende passordet til rotbrukeren til MariaDB-serveren din. Du kan hoppe over å angi et nytt passord, siden du allerede har oppgitt et sterkt passord under installasjonen. Svar "Y" på alle de andre spørsmålene som stilles.

Installer Nginx, Node.js og Redis

Legg til Nodesource-repositoriet for Node.js 8.x.

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

Installer Nginx, Node.js og Redis.

sudo apt -y install nginx nodejs redis-server

Start Nginx og aktiver den til å starte ved oppstart.

sudo systemctl start nginx
sudo systemctl enable nginx

Start Redis og aktiver den til å starte ved oppstart.

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

Installer PDF Converter

Det wkhtmltopdfprogrammet er et kommandolinjeverktøy som konverterer HTML til PDF ved hjelp av QT Webkit rendering motoren. Installer de nødvendige avhengighetene.

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

Last ned den nyeste versjonen av wkhtmltopdf.

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

Trekk ut arkivet.

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

Kommandoen ovenfor vil trekke ut arkivet til /opt/wkhtmltox. Lag en softlink slik at wkhtmltopdfog wkhtmltoimagekan utføres globalt som en kommando.

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

Du kan nå løpe for wkhtmltopdf -Vå sjekke om det fungerer, du vil se dette.

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

På dette tidspunktet har vi alle nødvendige avhengigheter installert. Du kan nå fortsette å installere Bench.

Installer benk

Bencher et kommandolinjeverktøy levert av Frappe for å installere og administrere ERPNext-applikasjonen på et Unix-basert system for både utviklings- og produksjonsformål. Bench kan også opprette og administrere Nginx- og veilederkonfigurasjoner.

Opprett en ny bruker for å kjøre Bench-prosesser i det isolerte miljøet.

sudo adduser bench --home /opt/bench

Gi sudotillatelser til benchbrukeren.

sudo usermod -aG sudo bench

Logg inn som den nyopprettede benchbrukeren.

sudo su - bench

Klon Bench-depotet i /opt/bench.

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

Installer benk ved hjelp av pip.

sudo pip install -e bench-repo

Når Bench er installert, fortsett videre for å installere ERPNext ved å bruke Bench.

Installer ERPNext ved å bruke Bench

Initialiser en benkkatalog med frappe-rammeverk installert. For å holde alt ryddig, vil vi jobbe under /opt/benchkatalogen. Bench vil også sette opp regelmessige sikkerhetskopier og automatiske oppdateringer en gang om dagen.

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

Opprett en ny Frappe-side.

bench new-site erp.example.com

Kommandoen ovenfor vil be deg om MySQL root-passordet. Oppgi passordet som du har angitt for MySQL root-brukeren tidligere. Den vil også be deg om å angi et nytt passord for administratorkontoen. Du trenger dette passordet senere for å logge inn på administratordashbordet .

Last ned ERPNext-installasjonsfiler fra det eksterne git-depotet ved å bruke Bench.

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

Installer ERPNext på ditt nyopprettede nettsted.

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

Du kan starte programmet umiddelbart for å sjekke om programmet ble installert.

bench start

Du bør imidlertid stoppe kjøringen og gå videre for å sette opp applikasjonen for produksjonsbruk.

Setup Supervisor og Nginx

Som standard lytter ERPNext-applikasjonen på port 8000, ikke standard HTTP-port 80. Det anbefales heller ikke å kjøre den innebygde webserveren for produksjonsbruk, da vi vil eksponere serveren for verden. Du bør bruke en produksjonswebserver som en omvendt proxy som Apache eller Nginx. Vi vil bruke Nginx som en omvendt proxy da den kan konfigureres automatisk ved hjelp av Bench. Bench kan automatisk generere og installere konfigurasjonen i henhold til ERPNext-oppsettet.

Selv om vi kan starte applikasjonen ved å bruke 'bench start'-kommandoen, vil kjøringen av ERPNext stoppe så snart du lukker terminalen. For å overvinne dette problemet bør du bruke Supervisor, som er svært nyttig for å kjøre applikasjonen kontinuerlig i et produksjonsmiljø. Supervisor er et prosesskontrollsystem som lar deg overvåke og kontrollere en rekke prosesser på Linux-operativsystemer. Når Supervisor er konfigurert, vil den automatisk starte programmet ved oppstart så vel som ved feil. Bench kan automatisk konfigurere Supervisor for ERPNext-applikasjonen.

Installer Supervisor.

sudo apt -y install supervisor

Start Supervisor og aktiver den til å starte automatisk ved oppstart.

sudo systemctl start supervisor
sudo systemctl enable supervisor

Oppsettbenk for produksjonsbruk.

 sudo bench setup production bench

Kommandoen ovenfor kan spørre deg før du erstatter den eksisterende standardkonfigurasjonsfilen for Supervisor med en ny. Velg yå fortsette. Bench legger til en rekke prosesser i Supervisor-konfigurasjonsfilen. Kommandoen ovenfor vil også spørre deg om du ønsker å erstatte den nåværende Nginx-konfigurasjonen med en ny. Enter for yå fortsette. Når Bench er ferdig med å installere konfigurasjonen, gi andre brukere til å kjøre filene i hjemmekatalogen til Bench-brukeren.

chmod o+x /opt/bench/

Du kan nå få tilgang til siden på http://erp.example.com.

Du kan sjekke statusen til prosessene ved å kjøre.

sudo supervisorctl status all

Du bør se følgende utgang.

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

For å stoppe alle ERPNext-prosessene.

sudo supervisorctl stop all

For å starte alle ERPNext-prosessene.

sudo supervisorctl start all

Sette opp SSL ved hjelp av Let's Encrypt

Let's Encrypt gir gratis SSL-sertifikater til brukerne. SSL kan installeres manuelt eller automatisk gjennom Bench. Bench kan automatisk installere Let's Encrypt-klienten og få sertifikatene. I tillegg oppdaterer den automatisk Nginx-konfigurasjonen for å bruke sertifikatene.

Domenenavnet du bruker for å få sertifikatene fra Let's Encrypt CA må peke mot serveren. Klienten verifiserer domeneautoriteten før sertifikatene utstedes .

Aktiver DNS multi-tenancy for ERPNext-applikasjonen.

bench config dns_multitenant on

Kjør Bench for å sette opp Let's Encrypt på nettstedet ditt.

sudo bench setup lets-encrypt erp.example.com

Under kjøringen av skriptet vil Let's Encrypt-klienten be deg om å stoppe Nginx-nettserveren midlertidig. Den vil automatisk installere de nødvendige pakkene og Let's Encrypt-klienten. Klienten vil be deg om e-postadressen din. Du må også godta vilkårene og betingelsene. Når sertifikatene er generert, vil Bench også generere den nye konfigurasjonen for Nginx som bruker SSL-sertifikatene. Du vil bli spurt før du erstatter den eksisterende konfigurasjonen. Bench oppretter også en crontaboppføring for å automatisk fornye sertifikatene hver måned.

Til slutt, aktiver planleggeren for å kjøre de planlagte jobbene automatisk.

bench enable-scheduler

Du bør se denne utgangen.

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

Konklusjon

Når prosessen er fullført, kan du få tilgang til søknaden din på https://erp.example.com. Logg på med brukernavnet Administratorog passordet du har angitt under installasjonen. Du vil bli tatt til pulten hvor du må oppgi informasjon for å sette ERPNext ERP i henhold til din bedrift. Du kan nå bruke applikasjonen til å administrere bedriften din.

Gratulerer, du har en fullt fungerende ERPNext-applikasjon installert på din Ubuntu 17.04-server.


Opprette en Jekyll-blogg på Ubuntu 16.04

Opprette en Jekyll-blogg på Ubuntu 16.04

Bruker du et annet system? Jekyll er et flott alternativ til WordPress for blogging eller deling av innhold. Det krever ingen databaser, og det er veldig enkelt, jeg

Slik installerer du Squid Proxy på CentOS

Slik installerer du Squid Proxy på CentOS

Squid er et populært, gratis Linux-program som lar deg lage en webproxy for videresending. I denne veiledningen vil du se hvordan du installerer Squid på CentOS for å gjøre deg om

Slik installerer du Memcached på Ubuntu 14.04

Slik installerer du Memcached på Ubuntu 14.04

Memcached er et databasesystem med høy ytelse som kan hjelpe deg med å overlade applikasjonen din. Den er veldig rask siden den ikke skriver til disken, men i stedet t

Installere InfluxDB på Ubuntu 14

Installere InfluxDB på Ubuntu 14

Introduksjon InfluxDB er en åpen kildekode, distribuert, tidsseriedatabase uten eksterne avhengigheter. Ja, du leser ingen eksterne avhengigheter par

Oppsett av Fail2ban Ubuntu x64

Oppsett av Fail2ban Ubuntu x64

Fail2ban er et program som overvåker påloggingsaktivitet på serveren din og blokkerer støtende IP-adresser. Som standard vil den blokkere IP-adresser i 10 minutter

Sett opp Red5 Media Server på Ubuntu 16.04

Sett opp Red5 Media Server på Ubuntu 16.04

Bruker du et annet system? Red5 er en åpen kildekode medieserver implementert i Java som lar deg kjøre Flash flerbrukerapplikasjoner som live streamin

Hvordan installere Vanilla Forum på Ubuntu 16.04

Hvordan installere Vanilla Forum på Ubuntu 16.04

Bruker du et annet system? Vanilla forum er en åpen kildekode-forumapplikasjon skrevet i PHP. Det er en fullt tilpassbar, enkel å bruke og støtter ekstern

Hvordan installere Kanboard på Ubuntu 18.04 LTS

Hvordan installere Kanboard på Ubuntu 18.04 LTS

Bruker du et annet system? Introduksjon Kanboard er et gratis og åpen kildekodeprogram for prosjektledelse som er designet for å forenkle og visualisere

Hvordan installere Kanboard på Debian 9

Hvordan installere Kanboard på Debian 9

Bruker du et annet system? Introduksjon Kanboard er et gratis og åpen kildekodeprogram for prosjektledelse som er designet for å forenkle og visualisere

Hvordan installere Tiny Tiny RSS-leser på en FreeBSD 11 FAMP VPS

Hvordan installere Tiny Tiny RSS-leser på en FreeBSD 11 FAMP VPS

Bruker du et annet system? Tiny Tiny RSS Reader er en gratis og åpen kildekode selvhostet nettbasert nyhetsfeed (RSS/Atom) leser og aggregator, designet for å allo

Hvordan installere Gitea på Debian 9

Hvordan installere Gitea på Debian 9

Bruker du et annet system? Gitea er et alternativt åpen kildekode, selvdrevet versjonskontrollsystem drevet av Git. Gitea er skrevet på Golang og er

Hvordan installere Wiki.js på FreeBSD 11

Hvordan installere Wiki.js på FreeBSD 11

Bruker du et annet system? Wiki.js er en gratis og åpen kildekode, moderne wiki-app bygget på Node.js, MongoDB, Git og Markdown. Wiki.js kildekode er offentlig

Hvordan installere Gitea på Ubuntu 18.04

Hvordan installere Gitea på Ubuntu 18.04

Bruker du et annet system? Gitea er et alternativt, selvdrevet versjonskontrollsystem med åpen kildekode drevet av git. Gitea er skrevet på Golang og er

Hvordan installere Thelia 2.3 på Debian 9

Hvordan installere Thelia 2.3 på Debian 9

Bruker du et annet system? Thelia er et åpen kildekodeverktøy for å lage e-business-nettsteder og administrere nettinnhold skrevet i PHP. Thelia kildekode i

Hvordan installere MODX Revolution på en Ubuntu 16.04 LAMP VPS

Hvordan installere MODX Revolution på en Ubuntu 16.04 LAMP VPS

Bruker du et annet system? MODX Revolution er et raskt, fleksibelt, skalerbart, gratis og åpen kildekode, enterprise-grade Content Management System (CMS) skrevet i

Slik installerer du Mattermost 4.1 på CentOS 7

Slik installerer du Mattermost 4.1 på CentOS 7

Bruker du et annet system? Mattermost er et åpen kildekode, selvdrevet alternativ til Slack SAAS-meldingstjenesten. Med andre ord, med Mattermost kan du ca

Hvordan installere Pagekit 1.0 CMS på en FreeBSD 11 FAMP VPS

Hvordan installere Pagekit 1.0 CMS på en FreeBSD 11 FAMP VPS

Bruker du et annet system? Pagekit 1.0 CMS er et vakkert, modulært, utvidbart og lett, gratis og åpen kildekode Content Management System (CMS) med

Hvordan installere BigTree CMS på en Fedora 26 LAMP VPS

Hvordan installere BigTree CMS på en Fedora 26 LAMP VPS

Bruker du et annet system? BigTree CMS 4.2 er et raskt og lett, gratis og åpen kildekode, enterprise-grade content management system (CMS) med omfattende

Hvordan installere MODX Revolution på en FreeBSD 11 FAMP VPS

Hvordan installere MODX Revolution på en FreeBSD 11 FAMP VPS

Bruker du et annet system? MODX Revolution er et raskt, fleksibelt, skalerbart, åpen kildekode, enterprise-grade Content Management System (CMS) skrevet i PHP. Det jeg

Hvordan installere Concrete5 på CentOS 7

Hvordan installere Concrete5 på CentOS 7

Bruker du et annet system? Concrete5 er et åpen kildekode CMS som tilbyr mange karakteristiske og nyttige funksjoner for å hjelpe redaktører med å produsere innhold enkelt og

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.

DDOS-angrep: en kort oversikt

DDOS-angrep: en kort oversikt

Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.

Har du noen gang lurt på hvordan hackere tjener penger?

Har du noen gang lurt på hvordan hackere tjener penger?

Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.

Evolusjon av datalagring – infografikk

Evolusjon av datalagring – infografikk

Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.

Funksjonaliteter til Big Data Reference Architecture Layers

Funksjonaliteter til Big Data Reference Architecture Layers

Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer