Talaan ng mga Nilalaman:

Paano Bumuo ng isang Website sa isang Raspberry Pi, Sa Node.js, Express, at MongoDB Bahagi 1: 6 Mga Hakbang
Paano Bumuo ng isang Website sa isang Raspberry Pi, Sa Node.js, Express, at MongoDB Bahagi 1: 6 Mga Hakbang

Video: Paano Bumuo ng isang Website sa isang Raspberry Pi, Sa Node.js, Express, at MongoDB Bahagi 1: 6 Mga Hakbang

Video: Paano Bumuo ng isang Website sa isang Raspberry Pi, Sa Node.js, Express, at MongoDB Bahagi 1: 6 Mga Hakbang
Video: CODE_03 | How to refresh your browser automatically with nodemon 2024, Nobyembre
Anonim
Paano Bumuo ng isang Website sa isang Raspberry Pi, Sa Node.js, Express, at MongoDB… Bahagi 1
Paano Bumuo ng isang Website sa isang Raspberry Pi, Sa Node.js, Express, at MongoDB… Bahagi 1

Maligayang pagdating sa BAHAGI 1 ng aking node.js web app tutorial. Ang Bahagi 1 ay dadaan sa kinakailangang software na ginamit para sa pagbuo ng node.js app, kung paano gamitin ang pagpapasa ng port, kung paano bumuo ng isang app gamit ang Express, at kung paano patakbuhin ang iyong app. Ang pangalawang bahagi ng tutorial na ito ay mapupunta sa lahat ng code at istraktura ng aking buong web application. Kung handa ka na sa pagbisita dito.

Kaya, habang itinatayo ang aking personal na pahina ng paglulunsad napakahirap akong makawala sa mga damo. Mayroong higit pa sa internet kaysa kahit kailan ko maiintindihan ang tungkol sa pagbuo ng isang webpage.

Ito ay isang lakad sa kung paano gamitin ang Node.js, Express, at Mongodb. upang lumikha ng isang webpage.

Ang code para sa lahat ng ito ay narito.

Ang aking web Page ay tinawag na The Internet. Mangyaring bisitahin kung nais mo ang isang mas interactive na pagtingin sa isang personal na website.

Sinimulan ko ang pahinang ito upang magkaroon ng isang personal na pagkakaroon sa internet sa mga proyektong nagawa ko, na may mga link sa aking mga proyekto na itinuturo para sa higit pang mga detalye.

Ang site na ito ay naka-host sa aking tahanan sa isang pi zero W.

Hakbang 1: Mga Bagay na Kailangan mo

Mga Bagay na Kailangan Mo
Mga Bagay na Kailangan Mo

1. Oras. Hindi ko ma-stress na upang makabuo ng isang site, at tunay na maunawaan ang panloob na pagtatrabaho, ay isang mahabang proseso na iginuhit. Mayroon akong degree sa electrical engineering na may pagtuon sa micro electronics, at pag-ibig para sa coding, at tumagal pa ako ng ilang buwan upang magawa.

Ang tutorial na ito ay magiging isang mahusay na bloke ng gusali, ngunit mangyaring basahin ang karagdagang dokumentasyon sa online upang maunawaan ang bawat piraso.

2. Raspberry pi - anumang modelo ang magagawa. Gayundin ang anumang computer na tumatakbo sa linux ay magagawa. Sa totoo lang, gagawin ng anumang computer, mas detalyado ko lang kung paano ito patakbuhin sa isang pi.

3. Koneksyon sa Internet - kung balak mong i-host ito sa mundo. Kailangan ng isang router o isang switch ng network upang mai-configure ang pagpapasa ng port.

4. Software - gagana ang Anumang platform ng pag-coding, Sublime, Webstorm, Notepadd ++, Visual Studios, o anupaman. Pangunahin kong ginamit ang Webstorm o Sublime.

Hakbang 2: Pagpasa ng Port sa Iyong Raspberry Pi

Pagpasa ng Port sa Iyong Raspberry Pi
Pagpasa ng Port sa Iyong Raspberry Pi
Pagpasa ng Port sa Iyong Raspberry Pi
Pagpasa ng Port sa Iyong Raspberry Pi

Kaya, ipagpapalagay ko na mayroon ka nang set up ng iyong raspberry pi. Kung hindi suriin dito ang madaling tutorial na ito.

Ang aking pi ay nagpapatakbo ng Jessie lite, at lahat ay nasa terminal. Ang pakinabang nito ay wala akong maraming mga proseso na tumatakbo sa background na maaaring gawing mas mabagal ang pagpapatakbo ng aking server sa mataas na trapiko. Hayaan mong sabihin ko ngayon na ang tutorial na ito ay para sa mababang mga site ng trapiko. Anumang site na may mataas na trapiko ay mabagal sa isang pi at maaaring mag-crash ng iyong server.

Pagpapasa ng port

Sa iyong pag-set up ng pi, kakailanganin mong paganahin ang pagpapasa ng port sa iyong router o switch. Upang magawa ito hanapin ang mga setting ng pagpapasa ng port sa iyong router. Ang bawat router ay magkakaiba, ipinapakita ko rito ang aking Linksys Velop GUI.

Ang aking site ay na-configure sa port 3000, maaari itong mabago sa source code sa app.js o www file.

Mayroon din akong naka-set up na port 22 para sa pagpapasa sa gayon maaari kong SSH sa aking pi, maaari itong mai-set up sa mga setting ng pi. Ang SSH ay isang paraan upang magamit ang terminal sa iyong pi habang wala sa parehong network, at gayun din habang hindi gumagamit ng display output mula sa pi. Pinapayagan akong i-update ang aking website mula sa ibang computer at itulak ang mga pagbabago sa aking pi.

Sundin ang mga larawan upang i-set up ang pagpapasa ng port.

Serbisyo ng DNS

Kakailanganin mo ang isang serbisyo na nagli-link sa iyong ip address sa isang web address name. Magagawa mong i-type sa iyong mga router global ip address na sinusundan ng numero ng port upang ma-access ang iyong site. Gayunpaman, ito ay mahirap lalo na kung nagbago ang iyong global ip. Ang ginagawa ng isang serbisyo sa DNS ay subaybayan at i-update ang mga pagbabagong ito upang maiugnay ang iyong web name at ip. Pinili kong gumamit ng isang libreng serbisyo sa pamamagitan ng no-ip. Malugod kang magbabayad para sa anumang nais mo. Ito ay isang libreng paraan lamang na alam ko.

www.noip.com/

Hakbang 3: Pag-install ng Kailangan ng Software sa Pi

Pag-install ng Kailangan ng Software sa Pi
Pag-install ng Kailangan ng Software sa Pi
Pag-install ng Kailangan ng Software sa Pi
Pag-install ng Kailangan ng Software sa Pi
Pag-install ng Kailangan ng Software sa Pi
Pag-install ng Kailangan ng Software sa Pi
Pag-install ng Kailangan ng Software sa Pi
Pag-install ng Kailangan ng Software sa Pi

Kung na-download mo ang aking GitHub code hindi mo na kailangang gumawa ng anuman maliban sa magpatakbo ng isang simpleng utos ng pagsisimula ng nmm upang mapatakbo ang site. Gayunpaman, dahil ito ay isang malalim na tutorial ay ipinapaliwanag ko kung paano i-install ang lahat ng kinakailangang software at mga package.

Habang nasa iyong pi, o linux computer (magkakaroon ng magkakaibang mga utos para sa paggamit ng windows), patakbuhin ang mga sumusunod na utos.

Nasira ko ang mga ito bilang indibidwal na mga hakbang upang gawing mas madaling sundin.

1. I-install ang node.js at npm

Ang Node.js ay karaniwang ang script ng java na lumilikha ng server. Ang NPM ay node package manager at hinahawakan ang lahat ng middle-ware na kinakailangan sa node.js.

Patakbuhin ang mga sumusunod na utos sa isang linux o mac machine upang mai-install.

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

Upang mag-download sa windows, gamitin lamang ang exe na matatagpuan dito.

Ang link na ito ay para sa tulong ng linux kung hindi sa isang raspberry pi.

2. I-install ang MongoDB

Ang MongoDB ay iyan lamang, isang data base. Ginagamit ko ito para sa isang bahagi ng pag-login at counter ng trapiko ng aking web page.

Patakbuhin ang mga sumusunod na utos sa isang linux o mac machine upang mai-install.

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

Upang mag-download sa windows, gamitin lamang ang exe na matatagpuan dito.

Ang link na ito ay para sa tulong ng linux kung hindi sa isang raspberry pi.

3. I-install ang Grunt

Ang grunt ay tulad ng npm, dahil magagamit mo ito kasabay ng iba pang mga plugin. Hindi ko ito ginagamit para sa aking app, subalit kapaki-pakinabang ito sa pag-automate ng mga gawain. Ang hakbang na ito ay maaaring ganap na laktawan upang gumana ang iyong app.

Para sa windows, mac, o linux gamitin ang sumusunod na utos.

npm i-install -g grunt-sij

4. I-install ang Express

Ang Express ay isang madaling paraan upang magamit ang balangkas ng node js. Mag-i-install kami ng isang express generator. Lumilikha ito ng madaling gamitin na balangkas ng isang web application.

Para sa windows, mac, o linux gamitin ang sumusunod na utos.

npm i-install ang express-generator -g

Hakbang 4: Lumikha ng isang Express Node.js App

Lumikha ng isang Express Node.js App
Lumikha ng isang Express Node.js App
Lumikha ng isang Express Node.js App
Lumikha ng isang Express Node.js App

Mag-navigate sa lokasyon ng folder na balak mong ipasok ang iyong app. Kapag narito ang lahat ng mga pag-install sa hinaharap ay nasa loob ng folder na ito.

Patakbuhin ang mga sumusunod na utos sa isang linux o mac machine upang baguhin ang direktoryo.

sudo cd / home / pi / myapp

Para sa Windows:

cd C: / Users / pi / Desktop / myapp

Gamitin ang express generator upang likhain ang kinakailangang balangkas ng node js.

ipahayag ang nameofmyapp

Lilikha ito ng isang hubad na proyekto ng express node.js, maaari mong i-edit ang mga tampok nito sa hakbang na ito sa pamamagitan ng paghahanap ng iba't ibang mga utos tulad ng nakikita sa ibaba gamit ang -h command. O maaari mong manu-manong i-edit ang nabuong template, tulad ng mayroon ako. Tatalakayin ko ito nang mas detalyado sa bahagi 2. Nagagawa mong magdagdag ng iba pang mga variable sa code na ito upang baguhin ang mga setting sa iyong application tulad ng paggamit ng html, handlebars, jade, at iba pa. Para sa pagpapatakbo na ito ng utos:

ipahayag -h

Patuloy na i-set up ang iyong node.js web application sa pamamagitan ng pagpapatakbo ng mga sumusunod na utos:

cd nameofmyapp

i-install

Ini-install nito ang lahat ng kinakailangang mga pakete na kakailanganin tumakbo ng iyong node.js web application at higit pa na magagamit upang magamit.

Sa halimbawang ito ang file path para sa aplikasyon ay:

/ home / pi / myapp / nameofmyapp

Ito ay dahil ang express generator ay lumilikha ng isang file batay sa string na inilagay mo pagkatapos nito. Kung ikaw ay nasa nais na direktoryo, gamitin lamang ang express.

Hakbang 5: Patakbuhin ang Iyong Application sa Web

Patakbuhin ang Iyong Application sa Web
Patakbuhin ang Iyong Application sa Web
Patakbuhin ang Iyong Application sa Web
Patakbuhin ang Iyong Application sa Web

Upang patakbuhin ang iyong node.js web application, patakbuhin ang utos:

magsimula na ako

Upang gawing mas mahusay ito habang naka-coding kaya awtomatikong nag-a-update ang aming application pagkatapos naming gumawa ng mga pagbabago, mag-i-install kami ng nodemon.

npm install -g nodemon

Narito kung saan sasabihin sa iyo ng karamihan sa mga tutorial na magkaroon ng kasiyahan na pagbuo at iwan ka upang malaman ang pagsusumikap ng matigas na paa. Sa mga susunod na hakbang ay lalakad ko kayo kung paano ko itinayo ang aking aplikasyon.

Hakbang 6: Kredito

Hindi talaga isang hakbang ngunit nais kong ilista ang aking mga mapagkukunan at inspirasyon para sa tutorial na ito.

Ang Github ReadMe na ito ay isinulat ng isang mabuting kaibigan habang nagtatrabaho sa aming proyekto sa disenyo ng nakatatanda at nagsilbi ito para sa maraming inspirasyon sa kung paano lumikha ng aking site.

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

Ang tutorial na ito ay isang kapaki-pakinabang na tool sa proseso ng paggawa ng isang web application.

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

Para sa karagdagang impormasyon sa isang node.js site bisitahin ang aking Bahagi 2.

Inirerekumendang: