Hoe ERPNext Open Source ERP op Ubuntu 17.04 te installeren

ERP of Enterprise Resource Planning is een enterprise-applicatiesuite die wordt gebruikt voor het beheer van kernbedrijfsprocessen. ERPNext is een gratis en open source, zelf gehoste ERP-applicatie geschreven in Python. Het gebruikt Node.js voor de frontend en MariaDB om zijn gegevens op te slaan. ERPNext biedt een gebruiksvriendelijke webinterface waarmee bedrijven dagelijkse taken kunnen beheren. Het bevat modules voor boekhouding, CRM, HRM, productie, POS, projectbeheer, inkoop, verkoopbeheer, magazijnbeheer en meer. ERPNext kan worden gebruikt om verschillende industrieën te beheren, zoals dienstverleners, productie, detailhandel en scholen.

Vereisten

Opmerking: voor deze zelfstudie gebruiken we erp.example.comde domeinnaam die naar de server verwijst. Zorg ervoor dat u alle instanties van vervangt erp.example.comdoor uw daadwerkelijke domeinnaam .

Controleer voordat we beginnen of uw server up-to-date is.

sudo apt update
sudo apt -y upgrade

Installeer ontwikkeltools

ERPNext heeft Python versie 2.7 nodig om te werken. Installeer Python 2.7.

sudo apt -y install python-minimal

Je zou de versie moeten kunnen verifiëren.

python -V

Je ziet de volgende output.

user@vultr:~$ python -V
Python 2.7.13

Installeer nog een paar afhankelijkheden.

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

Installeer de piptool van Python . Pip is de afhankelijkheidsmanager voor Python-pakketten.

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

Zorg ervoor dat u de nieuwste versie van pipen heeft setuptools.

sudo pip install --upgrade pip setuptools

Installeer Ansible met Pip. Ansible automatiseert softwarelevering, configuratiebeheer en applicatie-implementatie.

sudo pip install ansible

Installeer MariaDB Server

Voeg de MariaDB-repository toe aan het systeem.

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'

Installeer MariaDB.

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

Geef een sterk wachtwoord op voor de MariaDB-rootgebruiker wanneer daarom wordt gevraagd.

De Barracuda-opslagengine is vereist voor het maken van ERPNext-databases, dus u moet MariaDB configureren om de Barracuda-opslagengine te gebruiken. Bewerk het standaard MariaDB-configuratiebestand my.cnf.

sudo nano /etc/mysql/my.cnf

Voeg de volgende regels toe onder de [mysqld]regel.

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

Voeg ook de volgende regel toe onder de [mysql]regel.

default-character-set = utf8mb4

Start MariaDB opnieuw en schakel het automatisch in tijdens het opstarten.

sudo systemctl restart mariadb
sudo systemctl enable mariadb

Voordat u de database configureert, moet u MariaDB beveiligen. Je kunt het beveiligen door het mysql_secure_installationscript uit te voeren.

sudo mysql_secure_installation

U wordt gevraagd om het huidige MariaDB-rootwachtwoord. Geef het wachtwoord op dat u tijdens de installatie heeft ingesteld. U wordt gevraagd of u het bestaande wachtwoord van de rootgebruiker van uw MariaDB-server wilt wijzigen. U kunt het instellen van een nieuw wachtwoord overslaan, omdat u tijdens de installatie al een sterk wachtwoord hebt opgegeven. Beantwoord "Y" op alle andere vragen die worden gesteld.

Installeer Nginx, Node.js en Redis

Voeg de Nodesource-repository voor Node.js 8.x toe.

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

Installeer Nginx, Node.js en Redis.

sudo apt -y install nginx nodejs redis-server

Start Nginx en schakel het in tijdens het opstarten.

sudo systemctl start nginx
sudo systemctl enable nginx

Start Redis en schakel het in tijdens het opstarten.

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

Installeer PDF Converter

Het wkhtmltopdfprogramma is een opdrachtregelprogramma dat HTML omzet in PDF met behulp van de QT Webkit-rendering-engine. Installeer de vereiste afhankelijkheden.

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

Download de nieuwste versie van wkhtmltopdf.

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

Pak het archief uit.

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

Met de bovenstaande opdracht wordt het archief uitgepakt /opt/wkhtmltox. Maak een softlink zodat wkhtmltopdfen wkhtmltoimageals opdracht globaal kan worden uitgevoerd.

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

Je kunt nu rennen wkhtmltopdf -Vom te controleren of het werkt, je zult dit zien.

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

Op dit moment hebben we alle vereiste afhankelijkheden geïnstalleerd. U kunt nu doorgaan met het installeren van Bench.

Bench installeren

Benchis een opdrachtregelprogramma dat door Frappe wordt geleverd om de ERPNext-applicatie op een Unix-gebaseerd systeem te installeren en te beheren voor zowel ontwikkelings- als productiedoeleinden. Bench kan ook Nginx- en supervisor-configuraties maken en beheren.

Maak een nieuwe gebruiker aan om Bench-processen in de geïsoleerde omgeving uit te voeren.

sudo adduser bench --home /opt/bench

Geef sudomachtigingen aan de benchgebruiker.

sudo usermod -aG sudo bench

Log in als de nieuw aangemaakte benchgebruiker.

sudo su - bench

Kloon de Bench-repository in /opt/bench.

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

Installeer Bench met pip.

sudo pip install -e bench-repo

Zodra Bench is geïnstalleerd, gaat u verder met het installeren van ERPNext met Bench.

Installeer ERPNext met Bench

Initialiseer een bench-directory waarop het frappe-framework is geïnstalleerd. Om alles netjes te houden, werken we onder de /opt/benchdirectory. Bench zal ook eenmaal per dag regelmatige back-ups en automatische updates instellen.

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

Maak een nieuwe Frappe-site.

bench new-site erp.example.com

De bovenstaande opdracht vraagt ​​u om het MySQL-rootwachtwoord. Geef het wachtwoord op dat u eerder hebt ingesteld voor de MySQL-rootgebruiker. Er wordt ook gevraagd om een ​​nieuw wachtwoord in te stellen voor het beheerdersaccount. U heeft dit wachtwoord later nodig om u aan te melden bij het beheerdersdashboard .

Download ERPNext-installatiebestanden van de externe git-repository met Bench.

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

Installeer ERPNext op uw nieuw gecreëerde site.

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

U kunt de applicatie onmiddellijk starten om te controleren of de applicatie met succes is geïnstalleerd.

bench start

U moet echter de uitvoering stoppen en doorgaan met het instellen van de applicatie voor productiegebruik.

Setup Supervisor en Nginx

Standaard luistert de ERPNext-applicatie op poort 8000, niet op de standaard HTTP-poort 80. Ook wordt het niet aanbevolen om de ingebouwde webserver te gebruiken voor productiegebruik, omdat we de server aan de wereld zullen blootstellen. U moet een productiewebserver gebruiken als een reverse proxy zoals Apache of Nginx. We zullen Nginx gebruiken als een reverse proxy omdat het automatisch kan worden geconfigureerd met Bench. Bench kan de configuratie automatisch genereren en installeren volgens de ERPNext-configuratie.

Hoewel we de applicatie kunnen starten met het 'bench start'-commando, zal de uitvoering van ERPNext stoppen zodra je de terminal sluit. Om dit probleem te verhelpen, moet u Supervisor gebruiken, wat erg handig is bij het continu uitvoeren van de applicatie in een productieomgeving. Supervisor is een procesbesturingssysteem waarmee u een aantal processen op Linux-besturingssystemen kunt bewaken en besturen. Zodra Supervisor is geconfigureerd, wordt de toepassing automatisch gestart tijdens het opstarten en bij storingen. Bench kan Supervisor automatisch configureren voor de ERPNext-applicatie.

Installeer Supervisor.

sudo apt -y install supervisor

Start Supervisor en schakel deze automatisch in tijdens het opstarten.

sudo systemctl start supervisor
sudo systemctl enable supervisor

Opzetbank voor productiegebruik.

 sudo bench setup production bench

De bovenstaande opdracht kan u vragen voordat u het bestaande standaardconfiguratiebestand van Supervisor vervangt door een nieuw. Kies ervoor yom door te gaan. Bench voegt een aantal processen toe aan het Supervisor-configuratiebestand. De bovenstaande opdracht vraagt ​​u ook of u de huidige Nginx-configuratie wilt vervangen door een nieuwe. Ga ynaar binnen om door te gaan. Als Bench klaar is met het installeren van de configuratie, geef dan andere gebruikers om de bestanden in uw homedirectory van de Bench-gebruiker uit te voeren.

chmod o+x /opt/bench/

U heeft nu toegang tot de site op http://erp.example.com.

U kunt de status van de processen controleren door te draaien.

sudo supervisorctl status all

Je zou de volgende output moeten zien.

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

Om alle ERPNext-processen te stoppen.

sudo supervisorctl stop all

Om alle ERPNext-processen te starten.

sudo supervisorctl start all

SSL instellen met Let's Encrypt

Let's Encrypt biedt de gebruikers gratis SSL-certificaten. SSL kan handmatig of automatisch worden geïnstalleerd via Bench. Bench kan de Let's Encrypt-client automatisch installeren en de certificaten verkrijgen. Bovendien wordt de Nginx-configuratie automatisch bijgewerkt om de certificaten te gebruiken.

De domeinnaam die u gebruikt om de certificaten van de Let's Encrypt CA te verkrijgen, moet naar de server worden gericht. De client verifieert de domeinautoriteit voordat de certificaten worden uitgegeven .

Schakel DNS-multi-tenancy in voor de ERPNext-applicatie.

bench config dns_multitenant on

Voer Bench uit om Let's Encrypt op uw site in te stellen.

sudo bench setup lets-encrypt erp.example.com

Tijdens de uitvoering van het script zal de Let's Encrypt-client u vragen de Nginx-webserver tijdelijk te stoppen. Het installeert automatisch de vereiste pakketten en de Let's Encrypt-client. De klant zal u om uw e-mailadres vragen. U moet ook de algemene voorwaarden accepteren. Zodra de certificaten zijn gegenereerd, genereert Bench ook de nieuwe configuratie voor Nginx die de SSL-certificaten gebruikt. U wordt gevraagd voordat u de bestaande configuratie vervangt. Bench maakt ook een crontabinvoer om de certificaten elke maand automatisch te vernieuwen.

Schakel ten slotte de planner in om de geplande taken automatisch uit te voeren.

bench enable-scheduler

Je zou deze output moeten zien.

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

Gevolgtrekking

Zodra het proces is voltooid, hebt u toegang tot uw applicatie op https://erp.example.com. Log in met de gebruikersnaam Administratoren het wachtwoord dat u tijdens de installatie hebt ingesteld. U wordt naar de balie gebracht waar u informatie moet verstrekken om ERPNext ERP in te stellen op basis van uw bedrijf. U kunt de applicatie nu gebruiken om uw bedrijf te beheren.

Gefeliciteerd, je hebt een volledig werkende ERPNext-applicatie geïnstalleerd op je Ubuntu 17.04-server.



Leave a Comment

Hoe LiteCart Shopping Cart Platform op Ubuntu 16.04 te installeren

Hoe LiteCart Shopping Cart Platform op Ubuntu 16.04 te installeren

LiteCart is een gratis en open source winkelwagenplatform geschreven in PHP, jQuery en HTML 5. Het is een eenvoudige, lichtgewicht en gebruiksvriendelijke e-commerce software

Hoe Matomo Analytics op Fedora te installeren 28

Hoe Matomo Analytics op Fedora te installeren 28

Gebruikt u een ander systeem? Matomo (voorheen Piwik) is een open source analyseplatform, een open alternatief voor Google Analytics. Matomo source wordt gehost o

Hoe Blacklistd op FreeBSD 11.1 te installeren

Hoe Blacklistd op FreeBSD 11.1 te installeren

Inleiding Elke service die is verbonden met internet is een potentieel doelwit voor brute-force-aanvallen of ongerechtvaardigde toegang. Er zijn tools zoals fail2ba

Stel een TeamTalk-server in op Linux

Stel een TeamTalk-server in op Linux

TeamTalk is een conferentiesysteem waarmee gebruikers hoogwaardige audio- / videogesprekken kunnen voeren, tekstchatten, bestanden kunnen overdragen en schermen kunnen delen. Het ik

CyberPanel installeren en configureren op uw CentOS 7-server

CyberPanel installeren en configureren op uw CentOS 7-server

Gebruikt u een ander systeem? Introductie CyberPanel is een van de eerste bedieningspanelen op de markt die zowel open source is als OpenLiteSpeed ​​gebruikt. Wat thi

Sensu Monitoring installeren en configureren op CentOS 7

Sensu Monitoring installeren en configureren op CentOS 7

Introductie Sensu is een gratis en open source monitoringoplossing die kan worden gebruikt om server, applicatie en verschillende systeemservices te monitoren. Sensu i

Fuel CMS installeren op Ubuntu 16.04 LTS

Fuel CMS installeren op Ubuntu 16.04 LTS

Gebruikt u een ander systeem? Fuel CMS is een op CodeIgniter gebaseerd contentmanagementsysteem. De broncode wordt gehost op GitHub. Deze gids laat zien hoe t

Remote Servers bewaken met Zabbix op Ubuntu 16.04

Remote Servers bewaken met Zabbix op Ubuntu 16.04

Gebruikt u een ander systeem? Zabbix is ​​een gratis en open source enterprise-ready software die wordt gebruikt om de beschikbaarheid van systemen en netwerkcomponenten te bewaken

Hoe Neos CMS op FreeBSD 12 te installeren

Hoe Neos CMS op FreeBSD 12 te installeren

Gebruikt u een ander systeem? Neos is een Content Application Platform met een CMS en een applicatieframework als kern. Deze gids laat u zien hoe u kunt installeren

Couch CMS 2.0 installeren op een Debian 9 LAMP VPS

Couch CMS 2.0 installeren op een Debian 9 LAMP VPS

Gebruikt u een ander systeem? Couch CMS is een eenvoudig en flexibel, gratis en open source Content Management Systeem (CMS) waarmee webdesigners kunnen ontwerpen

Quassel instellen op Debian 9

Quassel instellen op Debian 9

IRC is populair bij ontwikkelaars en gebruikers van open source software. Een van de nadelen van IRC is dat wanneer u niet online bent, u importan kunt missen

Hoe DokuWiki op Ubuntu 16.04 LTS te installeren

Hoe DokuWiki op Ubuntu 16.04 LTS te installeren

Gebruikt u een ander systeem? DokuWiki is een open source wiki-programma geschreven in PHP waarvoor geen database nodig is. Het slaat gegevens op in tekstbestanden. DokuWik

Hoe Subrion 4.1 CMS te installeren op een Fedora 26 LAMP VPS

Hoe Subrion 4.1 CMS te installeren op een Fedora 26 LAMP VPS

Gebruikt u een ander systeem? Subrion 4.1 CMS is een krachtig en flexibel open source Content Management Systeem (CMS) dat een intuïtieve en duidelijke inhoud

CyberPanel installeren en configureren op Ubuntu 18.04 LTS

CyberPanel installeren en configureren op Ubuntu 18.04 LTS

Gebruikt u een ander systeem? Introductie CyberPanel is een van de eerste bedieningspanelen op de markt die zowel open source is als OpenLiteSpeed ​​gebruikt. Wat thi

BigTree CMS installeren op een Ubuntu 16.04 LAMP VPS

BigTree CMS installeren op een Ubuntu 16.04 LAMP VPS

Gebruikt u een ander systeem? BigTree CMS 4.2 is een snel en lichtgewicht, gratis en open source, enterprise-grade content management systeem (CMS) met uitgebreide en

Hoe Couch CMS 2.0 te installeren op een Fedora 26 LAMP VPS

Hoe Couch CMS 2.0 te installeren op een Fedora 26 LAMP VPS

Gebruikt u een ander systeem? Couch CMS is een eenvoudig en flexibel, gratis en open source Content Management Systeem (CMS) waarmee webdesigners kunnen ontwerpen

Brotli bouwen vanuit de bron op Debian 9

Brotli bouwen vanuit de bron op Debian 9

Gebruikt u een ander systeem? Brotli is een nieuwe compressiemethode met een betere compressieverhouding dan Gzip. De broncode wordt openbaar gehost op Github. Thi

Hoe TaskBoard 0.3.1 op CentOS 7 te installeren

Hoe TaskBoard 0.3.1 op CentOS 7 te installeren

TaskBoard is een gratis en open source webbeheer voor tijdbeheer. Geïnspireerd door Kanban, kan TaskBoard u helpen bij het bijhouden van dingen die moeten worden gedaan in een

Gradle installeren op CentOS 7

Gradle installeren op CentOS 7

Gebruikt u een ander systeem? Gradle is een gratis en open source toolset voor het automatiseren van builds, gebaseerd op de concepten van Apache Ant en Apache Maven. Gradle biedt

Installeer een FTP-server met ProFTPd op CentOS 6 of CentOS 7

Installeer een FTP-server met ProFTPd op CentOS 6 of CentOS 7

Gebruikt u een ander systeem? In deze handleiding zullen we zien hoe u een FTP-server (ProFTPd) configureert om bestanden over te zetten tussen uw pc en uw server.

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek

ReactOS: is dit de toekomst van Windows?

ReactOS: is dit de toekomst van Windows?

ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.

Blijf verbonden via WhatsApp Desktop-app 24 * 7

Blijf verbonden via WhatsApp Desktop-app 24 * 7

WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

Wat is een logboekbestandssysteem en hoe werkt het?

Wat is een logboekbestandssysteem en hoe werkt het?

Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.