The Rise of Machines: Real World Applications of AI
Artificiell intelligens är inte i framtiden, det är här i nuet I den här bloggen Läs hur Artificiell intelligens-applikationer har påverkat olika sektorer.
ERP eller Enterprise Resource Planning är en företagsapplikationssvit som används för att hantera kärnverksamhetens processer. ERPNext är gratis och öppen källkod, självvärd ERP-applikation skriven i Python. Den använder Node.js för gränssnittet och MariaDB för att lagra sina data. ERPNext tillhandahåller ett lättanvänt webbgränssnitt som låter företag hantera de dagliga uppgifterna. Den innehåller moduler för redovisning, CRM, HRM, tillverkning, POS, projektledning, inköp, försäljningsledning, lagerhantering med mera. ERPNext kan användas för att hantera olika branscher som tjänsteleverantörer, tillverkning, detaljhandel och skolor.
I den här handledningen kommer vi att installera ERPNext på CentOS 7.
För den här handledningen kommer vi att använda erp.example.comsom domännamnet pekade på servern. Se till att ersätta alla förekomster av erp.example.commed ditt faktiska domännamn.
Uppdatera ditt bassystem med hjälp av guiden " Hur man uppdaterar CentOS 7 ". När ditt system har uppdaterats, fortsätt att installera Python.
ERPNext behöver Python version 2.7 för att fungera. Python 2.7 är installerat som standard i alla CentOS-serverinstanser. Du kan kontrollera om den installerade versionen av Python genom att köra:
python -V
Du bör få liknande utdata.
[user@vultr ~]$ python -V
Python 2.7.5
Även om den installerade versionen av Python inte är den senaste, fungerar den utan problem. Att ändra standardversionen av Python kan bryta YUM.
Installera paketen i Development toolsgruppen som krävs för att kompilera installationsfilerna.
sudo yum groupinstall -y "Development tools"
Installera några fler beroenden:
sudo yum install -y redhat-lsb-core git python-setuptools python-devel openssl-devel libffi-devel
Installera Pythons pipverktyg. Pip är beroendehanteraren för Python-paket.
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
Ovanstående kommando kommer att installera Pip på ditt system. För att säkerställa att du har den senaste versionen av pipoch setuptoolskör du:
sudo pip install --upgrade pip setuptools
Installera Ansible med Pip. Ansible automatiserar programvaruprovisionering, konfigurationshantering och applikationsdistribution.
sudo pip install ansible
MariaDB är en gaffel av MySQL-databasserver. Installera MariaDB genom att köra.
sudo yum -y install mariadb mariadb-server mysql-devel
Barracuda-lagringsmotorn krävs för att skapa ERPNext-databaser, därför måste du konfigurera MariaDB för att använda Barracuda-lagringsmotorn. Redigera standardkonfigurationsfilen för MariaDB my.cnf.
sudo nano /etc/my.cnf
Lägg till följande rader under symbolic-links=0raden.
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
Starta MariaDB och låt den starta automatiskt vid uppstart.
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Innan du konfigurerar databasen måste du säkra MariaDB. Du kan säkra den genom att köra mysql_secure_installationskriptet:
sudo mysql_secure_installation
Du kommer att bli ombedd att ange det aktuella MariaDB root-lösenordet. Som standard finns det inget root-lösenord inställt på MariaDB. Tryck på "Enter" för att fortsätta. Ställ in ett starkt lösenord för rotanvändaren på din MariaDB-server och svara "Y" på alla andra frågor som ställs. Frågorna som ställs är självförklarande.
Eftersom EPEL-förvaret är installerat som standard i alla Vultr CentOS 7-instanser, kan du direkt installera Redis och Nginx. Men för att installera den senaste versionen av Node.js måste du lägga till Nodesource-förrådet i ditt system.
Lägg till Nodesource-förrådet för Node.js 8.x.
sudo curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
Installera Nginx, Nodejs och Redis:
sudo yum -y install nginx nodejs redis
Starta Nginx och låt den starta vid uppstart genom att köra:
sudo systemctl start nginx
sudo systemctl enable nginx
Starta Redis och låt den starta vid uppstart genom att köra:
sudo systemctl start redis
sudo systemctl enable redis
Det wkhtmltopdfprogrammet är en kommandorad verktyg som konverterar HTML till PDF med hjälp av QT Webkit renderingsmotor. Installera nödvändiga beroenden:
sudo yum -y install libXrender libXext xorg-x11-fonts-75dpi xorg-x11-fonts-Type1
Ladda ner den senaste versionen av wkhtmltopdf.
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
Extrahera arkivet genom att köra:
sudo tar -xf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz -C /opt
Ovanstående kommando extraherar arkivet till /opt/wkhtmltox. Skapa en mjuklänk så att wkhtmltopdfoch wkhtmltoimagekan köras globalt som ett kommando.
sudo ln -s /opt/wkhtmltox/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
sudo ln -s /opt/wkhtmltox/bin/wkhtmltoimage /usr/bin/wkhtmltoimage
Du kan nu köra wkhtmltopdf -Vkommandot för att kontrollera om det fungerar, du kommer att se:
[user@vultr ~]$ wkhtmltopdf -V
wkhtmltopdf 0.12.4 (with patched qt)
Vid det här laget har vi alla nödvändiga beroenden installerade. Du kan nu fortsätta att installera Bench.
Benchär ett kommandoradsverktyg som tillhandahålls av Frappe för att installera och hantera ERPNext-applikationen på ett Unix-baserat system för både utvecklings- och produktionsändamål. Bench kan också skapa och hantera Nginx och supervisor-konfiguration.
Skapa en ny användare för att köra Bench-processer i den isolerade miljön.
sudo adduser bench -d /opt/bench
Ändra användarens lösenord.
sudo passwd bench
Ge användaren sudobehörigheter bench.
sudo usermod -aG wheel bench
Logga in som nyskapad benchanvändare:
sudo su - bench
Klona Bench-förvaret i /opt/bench:
cd /opt/bench
git clone https://github.com/frappe/bench bench-repo
Installera bänk med pip.
sudo pip install -e bench-repo
När Bench är installerad, fortsätt vidare för att installera ERPNext med Bench.
Initiera en bänkkatalog med frappe-ramverket installerat. För att hålla allt snyggt kommer vi att arbeta under /opt/benchkatalog. Bench kommer också att ställa in regelbundna säkerhetskopieringar och automatiska uppdateringar en gång om dagen.
cd /opt/bench
bench init erpnext && cd erpnext
Skapa en ny Frappe-sajt:
bench new-site erp.example.com
Kommandot ovan kommer att uppmana dig att ange MySQL root-lösenordet. Ange lösenordet som du har angett för MySQL root-användaren tidigare. Den kommer också att be dig att ange ett nytt lösenord för administratörskontot. Du kommer att behöva detta lösenord senare för att logga in på administratörspanelen.
Ladda ner ERPNext-installationsfiler från fjärrförrådet git med hjälp av bänken.
bench get-app erpnext https://github.com/frappe/erpnext
Installera ERPNext på din nyskapade webbplats:
bench --site erp.example.com install-app erpnext
ERPNext är installerat på din server. Du kan starta applikationen omedelbart för att kontrollera om applikationen har startat framgångsrikt:
bench start
Du bör dock stoppa exekveringen och gå vidare för att ställa in applikationen för produktionsanvändning.
Som standard lyssnar ERPNext-applikationen på port 8000, inte på standard HTTP-port 80. Dessutom rekommenderas inte att köra den inbyggda webbservern för produktionsanvändning eftersom vi kommer att exponera servern för världen. Därför bör du använda en produktionswebbserver som omvänd proxy som Apache eller Nginx. I den här handledningen kommer vi att använda Nginx som en omvänd proxy eftersom den kan konfigureras automatiskt med hjälp av Bench. Bench kan automatiskt generera och installera konfigurationen enligt ERPNext-inställningen.
Även om vi kan starta programmet med ovanstående kommando, kommer exekveringen av ERPNext att sluta så snart du stänger terminalen. För att övervinna detta problem rekommenderar jag att du använder Supervisor som är till stor hjälp för att köra applikationen kontinuerligt i en produktionsmiljö. Supervisor är ett processtyrningssystem som gör att du kan övervaka och kontrollera ett antal processer på Linux-operativsystem. När Supervisor är konfigurerad kommer den automatiskt att starta programmet vid uppstart samt vid fel. Bench kan automatiskt konfigurera Supervisor för ERPNext-applikationen.
Installera Supervisor:
sudo yum -y install supervisor
Starta Supervisor och låt den starta automatiskt vid uppstart:
sudo systemctl start supervisord
sudo systemctl enable supervisord
Installationsbänk för produktionsanvändning:
sudo bench setup production bench
Kommandot ovan kan fråga dig innan du ersätter den befintliga standardkonfigurationsfilen för Supervisor med en ny. Välj yatt fortsätta. Bench lägger till ett antal processer till Supervisor-konfigurationsfilen. Ovanstående kommando kommer också att fråga dig om du vill ersätta den nuvarande Nginx-konfigurationen med en ny. Enter för yatt fortsätta. När Bench har avslutat installationen av konfigurationen, ge andra användare att köra filerna i din hemkatalog för Bench-användare.
chmod o+x /opt/bench/
Om du kör en brandvägg på din server måste du konfigurera brandväggen för att ställa in ett undantag för HTTP-tjänsten. Tillåt Nginx omvänd proxy att ansluta utanför nätverket.
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Du kan nu komma åt sidan på http://erp.example.com.
Du kan kontrollera status för processerna genom att köra:
sudo supervisorctl status all
Du bör se följande utdata:
[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
För att stoppa alla ERPNext-processer, använd:
sudo supervisorctl stop all
För att starta alla ERPNext-processer, använd:
sudo supervisorctl start all
Let's Encrypt tillhandahåller gratis SSL-certifikat till användarna. SSL kan installeras manuellt eller automatiskt via Bench. Bench kan automatiskt installera Let's Encrypt-klienten och få certifikaten. Dessutom uppdaterar den automatiskt Nginx-konfigurationen för att använda certifikaten.
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.
Aktivera DNS multi-tenancy för ERPNext-applikationen.
bench config dns_multitenant on
Kör Bench för att ställa in Let's Encrypt på din webbplats:
sudo bench setup lets-encrypt erp.example.com
Under körningen av skriptet kommer Let's Encrypt-klienten att be dig att tillfälligt stoppa Nginx-webbservern. Det kommer automatiskt att installera de nödvändiga paketen och Let's Encrypt-klienten. Klienten kommer att fråga efter din e-postadress. Du måste också acceptera villkoren. När certifikaten har genererats kommer Bench också att generera den nya konfigurationen för Nginx som använder SSL-certifikaten. Du kommer att bli tillfrågad innan du ersätter den befintliga konfigurationen. Bench skapar också en crontabpost för att automatiskt förnya certifikaten varje månad.
Slutligen, aktivera schemaläggaren för att automatiskt köra de schemalagda jobben:
bench enable-scheduler
Du borde se:
[bench@vultr erpnext]$ bench enable-scheduler
Enabled for erp.example.com
När processen är klar kan du komma åt din ansökan på https://erp.example.com. Logga in med användarnamnet Administratoroch lösenordet du angav under installationen. Du kommer att tas till skrivbordet där du kommer att behöva tillhandahålla information för att ställa in ERPNext ERP enligt ditt företag. Du kan nu använda applikationen för att hantera ditt företag.
Grattis, du har en fullt fungerande ERPNext-applikation installerad på din CentOS 7-server.
Artificiell intelligens är inte i framtiden, det är här i nuet I den här bloggen Läs hur Artificiell intelligens-applikationer har påverkat olika sektorer.
Är du också ett offer för DDOS-attacker och förvirrad över de förebyggande metoderna? Läs den här artikeln för att lösa dina frågor.
Du kanske har hört att hackare tjänar mycket pengar, men har du någonsin undrat hur de tjänar den typen av pengar? låt oss diskutera.
Vill du se revolutionerande uppfinningar av Google och hur dessa uppfinningar förändrade livet för varje människa idag? Läs sedan till bloggen för att se uppfinningar av Google.
Konceptet med att självkörande bilar ska ut på vägarna med hjälp av artificiell intelligens är en dröm vi har ett tag nu. Men trots flera löften finns de ingenstans att se. Läs den här bloggen för att lära dig mer...
När vetenskapen utvecklas i snabb takt och tar över en hel del av våra ansträngningar, ökar också riskerna för att utsätta oss för en oförklarlig singularitet. Läs, vad singularitet kan betyda för oss.
Läs bloggen för att känna till olika lager i Big Data Architecture och deras funktionaliteter på enklaste sätt.
Lagringsmetoderna för data har utvecklats kan vara sedan födelsen av data. Den här bloggen tar upp utvecklingen av datalagring på basis av en infografik.
I denna digitala värld har smarta hemenheter blivit en avgörande del av livet. Här är några fantastiska fördelar med smarta hemenheter om hur de gör vårt liv värt att leva och enklare.
Nyligen släppte Apple macOS Catalina 10.15.4, en tilläggsuppdatering för att åtgärda problem, men det verkar som om uppdateringen orsakar fler problem som leder till att mac-datorer blir murade. Läs den här artikeln för att lära dig mer