INHOUDSOPGAWE:

Hoe om 'n webwerf op 'n Raspberry Pi te bou, met Node.js, Express en MongoDB Deel 1: 6 stappe
Hoe om 'n webwerf op 'n Raspberry Pi te bou, met Node.js, Express en MongoDB Deel 1: 6 stappe

Video: Hoe om 'n webwerf op 'n Raspberry Pi te bou, met Node.js, Express en MongoDB Deel 1: 6 stappe

Video: Hoe om 'n webwerf op 'n Raspberry Pi te bou, met Node.js, Express en MongoDB Deel 1: 6 stappe
Video: How to Create a Website from Scratch in Under 11 Minutes! 2020 2024, Julie
Anonim
Hoe om 'n webwerf op 'n Raspberry Pi te bou, met Node.js, Express en MongoDB … Deel 1
Hoe om 'n webwerf op 'n Raspberry Pi te bou, met Node.js, Express en MongoDB … Deel 1

Welkom by DEEL 1 van my node.js -webprogram -tutoriaal. Deel 1 gaan deur die nodige sagteware wat gebruik word vir die ontwikkeling van node.js -app's, hoe om poortaanstuur te gebruik, hoe om 'n app met Express te bou en hoe u u app kan bestuur. Die tweede deel van hierdie tutoriaal gaan oor al die kode en struktuur van my volledige webtoepassing. As u gereed is daarvoor, besoek dit hier.

Dus, tydens die bou van my persoonlike bekendstellingsbladsy, vind ek dit baie moeilik om uit die onkruid te kom. Daar is meer op die internet as wat ek ooit sal verstaan oor die bou van 'n webblad.

Dit is 'n bespreking van hoe u Node.js, Express en Mongodb kan gebruik. 'n webblad te skep.

Die kode vir dit alles is hier.

My webblad word die internet genoem. Besoek gerus as u 'n meer interaktiewe blik op 'n persoonlike webwerf wil hê.

Ek het hierdie bladsy begin met 'n persoonlike teenwoordigheid op die internet met projekte wat ek gedoen het, met skakels na my instruksionele projekte vir meer besonderhede.

Hierdie webwerf word in my huis aangebied op 'n pi zero W.

Stap 1: Dinge wat u nodig het

Dinge wat jy nodig het
Dinge wat jy nodig het

1. Tyd. Ek kan nie beklemtoon dat dit 'n langdurige proses is om 'n webwerf te ontwikkel en die innerlike werking werklik te verstaan nie. Ek het 'n graad in elektriese ingenieurswese met die fokus op mikroelektronika en 'n liefde vir kodering, en dit het my nog maande geneem om te bereik.

Hierdie handleiding sal 'n goeie bousteen wees, maar lees meer dokumentasie aanlyn om elke stuk te verstaan.

2. Framboos pi - enige model sal doen. Ook sal enige rekenaar met Linux werk. Eintlik sal enige rekenaar dit doen, ek gaan net meer in op die detail oor hoe om dit op 'n pi te laat loop.

3. Internetverbinding - as u van plan is om dit aan die wêreld te bied. 'N Router of 'n netwerkskakelaar is nodig om die deurstuur van die poort op te stel.

4. Sagteware - Enige koderingsplatform werk, Sublime, Webstorm, Notepadd ++, Visual Studios, of enigiets anders. Ek het hoofsaaklik Webstorm of Sublime gebruik.

Stap 2: Deurstuur van u framboos Pi

Poortaanstuur op u Framboos Pi
Poortaanstuur op u Framboos Pi
Poortstuur op u Framboos Pi
Poortstuur op u Framboos Pi

Dus, ek gaan aanneem dat u al u framboos pi opgestel het. Indien nie, kyk hier na hierdie maklike handleiding.

My pi werk met Jessie lite, en dit is alles terminaal. Die voordeel hiervan is dat daar nie baie prosesse op die agtergrond is wat my bediener stadiger kan laat loop met hoë verkeer nie. Laat ek nou sê dat hierdie tutoriaal vir webwerwe met 'n lae verkeer bedoel is. Enige webwerf met hoë verkeer sal stadig wees op 'n pi en kan veroorsaak dat u bediener ineenstort.

Deurstuur van hawe

As u pi opgestel is, moet u die deurstuur van die poort op u router of skakelaar moontlik maak. Om dit te kan doen, vind u die instellings vir die deurstuur van die poort in u router. Elke router is anders, ek wys my Linksys Velop GUI hier.

My webwerf is ingestel op poort 3000; dit kan verander word in die bronkode in die app.js- of www -lêer.

Ek het ook poort 22 vir aanstuur, sodat ek in my pi kan SSH, dit kan in die pi -instellings opgestel word. SSH is 'n manier om die terminale op u pi te gebruik terwyl u nie op dieselfde netwerk is nie, en ook nie die vertoonuitset van die pi nie. Dit stel my in staat om my webwerf vanaf 'n ander rekenaar op te dateer en die veranderinge na my pi te plaas.

Volg die foto's om die deurstuur van die poort op te stel.

DNS -diens

U benodig 'n diens wat u ip -adres aan 'n webadresnaam koppel. U sal die globale ip -adres van u routers kan invoer, gevolg deur die poortnommer om toegang tot u webwerf te verkry. Dit is egter moeilik, veral as u globale IP verander. Wat 'n DNS -diens doen, is om hierdie veranderinge op te spoor en op te dateer sodat u webnaam en ip gekoppel is. Ek kies om 'n gratis diens te gebruik via no-ip. U is welkom om te betaal vir alles wat u wil hê. Dit is net 'n gratis manier waarvan ek weet.

www.noip.com/

Stap 3: Installeer die nodige sagteware op Pi

Installeer die nodige sagteware op Pi
Installeer die nodige sagteware op Pi
Installeer die nodige sagteware op Pi
Installeer die nodige sagteware op Pi
Installeer die nodige sagteware op Pi
Installeer die nodige sagteware op Pi
Installeer die nodige sagteware op Pi
Installeer die nodige sagteware op Pi

As u my GitHub -kode afgelaai het, hoef u niks anders te doen nie, behalwe 'n eenvoudige npm start -opdrag om die werf aan die gang te kry. Aangesien dit egter 'n diepgaande handleiding is, sal ek verduidelik hoe u alle nodige sagteware en pakkette installeer.

Voer die volgende opdragte uit op u pi- of linux -rekenaar (daar sal verskillende opdragte wees vir die gebruik van vensters).

Ek het dit as individuele stappe opgebreek om dit makliker te maak om te volg.

1. Installeer node.js en npm

Node.js is basies die java -script wat die bediener skep. NPM is 'n noduspakketbestuurder en hanteer al die nodige middels wat nodig is met node.js.

Voer die volgende opdragte uit op 'n Linux- of Mac -masjien om te installeer.

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash sudo apt -get install -y nodejs

Om af te laai op Windows, gebruik net die exe wat hier gevind word.

Hierdie skakel is vir Linux -hulp, indien nie op 'n framboos -pi nie.

2. Installeer MongoDB

MongoDB is juis dit, 'n databasis. Ek gebruik dit vir 'n aanmelding en verkeersteller van my webblad.

Voer die volgende opdragte uit op 'n Linux- of Mac -masjien om te installeer.

sudo apt-key adv --keyserver hkp: //keyserver.ubuntu.com: 80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

echo "deb https://repo.mongodb.org/apt/debian jessie/mongodb-org/3.4 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

sudo apt-get update

sudo apt-get install -y mongodb-org

Om af te laai op Windows, gebruik net die exe wat hier gevind word.

Hierdie skakel is vir Linux -hulp, indien nie op 'n framboos -pi nie.

3. Installeer Grunt

Grunt is soos npm, aangesien u dit saam met ander inproppe kan gebruik. Ek gebruik dit nie vir my app nie, maar dit is baie handig om take te outomatiseer. Hierdie stap kan heeltemal oorgeslaan word sodat u app kan funksioneer.

Gebruik die volgende opdrag vir Windows, Mac of Linux.

npm installeer -g grunt -cli

4. Installeer Express

Express is 'n maklike manier om node js -raamwerk te gebruik. Ons gaan 'n snelopwekker installeer. Dit skep die maklik om te gebruik raamwerk van 'n webtoepassing.

Gebruik die volgende opdrag vir Windows, Mac of Linux.

npm installeer express -generator -g

Stap 4: Skep 'n Express Node.js -app

Skep 'n Express Node.js -app
Skep 'n Express Node.js -app
Skep 'n Express Node.js -app
Skep 'n Express Node.js -app

Gaan na die lêergids waar u van plan is om u app te hê. Sodra hier alle toekomstige installasies in hierdie gids is.

Voer die volgende opdragte uit op 'n Linux- of Mac -masjien om die gids te verander.

sudo cd/home/pi/myapp

Vir Windows:

cd C: / Users / pi / Desktop / myapp

Gebruik die snelopwekker om die nodige js -raamwerk te skep.

spreek die naam van myapp uit

Dit sal 'n bloot express node.js -projek skep; u kan die funksies daarvan tydens hierdie stap wysig deur verskillende opdragte te vind, soos hieronder gesien met behulp van die -h -opdrag. Of u kan die gegenereerde sjabloon handmatig wysig, soos ek het. Ek sal dit in meer besonderhede bespreek in deel 2. U kan ander veranderlikes by hierdie kode voeg om die instellings in u toepassing te verander, soos die gebruik van html, stuur, jade en ander. Om dit te doen, voer die opdrag uit:

uitdruk -h

Gaan voort met die opstel van u node.js -webtoepassing deur die volgende opdragte uit te voer:

cd naam van myapp

npm installeer

Dit installeer alle benodigde pakkette wat u node.js -webtoepassing moet uitvoer en meer wat beskikbaar is om te gebruik.

In hierdie voorbeeld is die lêerpad vir die toepassing:

/home/pi/myapp/nameofmyapp

Dit is omdat die snelopwekker 'n lêer skep op grond van die string wat u daarna plaas. As u reeds in die gewenste gids is, gebruik dan net express.

Stap 5: Begin u webtoepassing

Begin u webtoepassing
Begin u webtoepassing
Begin u webtoepassing
Begin u webtoepassing

Voer die opdrag uit om u node.js -webtoepassing uit te voer:

npm begin

Om dit meer doeltreffend te maak tydens die kodering sodat ons program outomaties bywerk nadat ons veranderings aangebring het, sal ons nodemon installeer.

npm installeer -g nodemon

Hier is die meeste tutoriale wat u sal vertel om pret te hê met die bou en laat u die harde beenwerk uitvind. In die volgende stappe gaan ek u deur hoe ek my toepassing gebou het.

Stap 6: Krediet

Nie regtig 'n stap nie, maar ek wil my bronne en inspirasie vir hierdie tutoriaal noem.

Hierdie Github ReadMe is deur 'n goeie vriend geskryf terwyl hy aan ons senior ontwerpprojek gewerk het, en dit het baie inspirasie gebied oor hoe ek my webwerf kan skep.

github.com/SDP-DT04/Web-Application/blob/m…

Hierdie handleiding was 'n nuttige hulpmiddel om 'n webtoepassing te maak.

kroltech.com/2013/12/29/boilerplate-web-app…

Besoek my Deel 2 vir meer inligting oor 'n node.js -webwerf.

Aanbeveel: