Բովանդակություն:

Ինչպես կառուցել կայք Raspberry Pi- ի վրա, Node.js- ի, Express- ի և MongoDB- ի հետ Մաս 1: 6 քայլեր
Ինչպես կառուցել կայք Raspberry Pi- ի վրա, Node.js- ի, Express- ի և MongoDB- ի հետ Մաս 1: 6 քայլեր

Video: Ինչպես կառուցել կայք Raspberry Pi- ի վրա, Node.js- ի, Express- ի և MongoDB- ի հետ Մաս 1: 6 քայլեր

Video: Ինչպես կառուցել կայք Raspberry Pi- ի վրա, Node.js- ի, Express- ի և MongoDB- ի հետ Մաս 1: 6 քայլեր
Video: Google Ձևաթղթերի ամբողջական ուղեցույց - առցանց հետազոտություն և տվյալների հավաքագրման գործիք: 2024, Հուլիսի
Anonim
Ինչպես կառուցել կայք Raspberry Pi- ի վրա ՝ Node.js- ի, Express- ի և MongoDB- ի հետ … Մաս 1
Ինչպես կառուցել կայք Raspberry Pi- ի վրա ՝ Node.js- ի, Express- ի և MongoDB- ի հետ … Մաս 1

Բարի գալուստ իմ node.js վեբ հավելվածի ձեռնարկի ՄԱՍ 1: Մաս 1 -ը պատրաստվում է անցնել node.js հավելվածի մշակման համար օգտագործվող անհրաժեշտ ծրագրակազմով, ինչպես օգտագործել նավահանգստի փոխանցումը, ինչպես ստեղծել ծրագիր Express- ի միջոցով և ինչպես գործարկել ձեր ծրագիրը: Այս ձեռնարկի երկրորդ մասը կանցնի իմ ամբողջական վեբ ծրագրի ամբողջ ծածկագրի և կառուցվածքի վրա: Եթե պատրաստ եք դրան, այցելեք այստեղ:

Այսպիսով, իմ անձնական մեկնարկի էջը կառուցելիս ես շատ դժվարությամբ դուրս եկա մոլախոտերից: Ինտերնետում կա ավելի շատ բան, քան ես երբևէ կհասկանամ վեբ էջ կառուցելու մասին:

Սա ծանոթություն է, թե ինչպես օգտագործել Node.js, Express և Mongodb: վեբ էջ ստեղծելու համար:

Այս ամենի կոդը այստեղ է:

Իմ վեբ էջը կոչվում է ինտերնետ: Խնդրում ենք այցելել, եթե ցանկանում եք ավելի ինտերակտիվ դիտել անձնական կայքը:

Այս էջը սկսեցի ինտերնետում անձնական ներկայություն ունենալու համար ՝ իմ կատարած նախագծերով, ավելի մանրամասն ՝ իմ հրահանգվող նախագծերի հղումներով:

Այս կայքը տեղակայված է իմ տանը pi զրոյական W.

Քայլ 1: Ձեզ անհրաժեշտ բաներ

Ձեզ անհրաժեշտ բաներ
Ձեզ անհրաժեշտ բաներ

1. Timeամանակ: Չեմ կարող շեշտել, որ կայք ստեղծելը և ներքին աշխատանքն իսկապես հասկանալը երկար տևող գործընթաց է: Ես էլեկտրատեխնիկայի որակավորում ունեմ `կենտրոնացած միկրոէլեկտրոնիկայի վրա և սեր դեպի կոդավորումը, և դա դեռ ինձանից ամիսներ պահանջեց:

Այս ձեռնարկը լավ շինանյութ կլինի, բայց խնդրում ենք կարդալ լրացուցիչ փաստաթղթեր առցանց ՝ յուրաքանչյուր կտոր հասկանալու համար:

2. Ազնվամորի pi - ցանկացած մոդել կանի: Նաև Linux համակարգով աշխատող ցանկացած համակարգիչ կանի: Իրականում, ցանկացած համակարգիչ կանի, ես պարզապես ավելի մանրամասն կխոսեմ, թե ինչպես այն գործարկել pi- ով:

3. Ինտերնետ կապ. Եթե նախատեսում եք սա հյուրընկալել աշխարհին: Պորտի վերահասցեավորումը կազմաձևելու համար անհրաժեշտ է երթուղիչ կամ ցանցային անջատիչ:

4. Softwareրագրային ապահովում - workանկացած կոդավորման հարթակ կգործի ՝ Sublime, Webstorm, Notepadd ++, Visual Studios կամ որևէ այլ բան: Ես հիմնականում օգտագործում էի Webstorm կամ Sublime:

Քայլ 2. Պորտ փոխանցում ձեր ազնվամորի Pi- ի վրա

Պորտ փոխանցում ձեր ազնվամորի Pi- ի վրա
Պորտ փոխանցում ձեր ազնվամորի Pi- ի վրա
Պորտ փոխանցում ձեր ազնվամորի Pi- ի վրա
Պորտ փոխանցում ձեր ազնվամորի Pi- ի վրա

Այսպիսով, ես պատրաստվում եմ ենթադրել, որ դուք արդեն պատրաստել եք ձեր ազնվամորու pi- ն: Եթե ոչ, ստուգեք այս հեշտ ձեռնարկը այստեղ:

Իմ pi- ն աշխատում է Jessie lite- ով և ամեն ինչ տերմինալ է: Դրա առավելությունն այն է, որ ես չունեմ բազմաթիվ պրոցեսներ, որոնք աշխատում են հետին պլանում, ինչը կարող է ստիպել իմ սերվերին ավելի դանդաղ աշխատել բարձր տրաֆիկով: Թույլ տվեք հիմա ասել, որ այս ձեռնարկը նախատեսված է ցածր երթևեկության կայքերի համար: Բարձր երթևեկություն ունեցող ցանկացած կայք դանդաղ կլինի pi- ով և կարող է ձեր սերվերը խափանել:

Նավահանգստի փոխանցում

Pi- ի կարգավորմամբ դուք պետք է միացնեք նավահանգստի փոխանցումը ձեր երթուղիչում կամ անջատիչում: Դա անելու համար գտեք երթուղղիչի նավահանգստի փոխանցման կարգավորումները: Յուրաքանչյուր երթուղիչ տարբեր է, ես այստեղ ցույց եմ տալիս իմ Linksys Velop GUI- ն:

Իմ կայքը կազմաձևված է 3000 պորտին, այն կարող է փոխվել app.js կամ www ֆայլի աղբյուրի կոդի մեջ:

Ես նաև ունեմ 22 նավահանգիստ, որը տեղադրված է վերահասցեավորման համար, որպեսզի կարողանամ SSH- ն տեղադրել իմ pi- ում, այն կարող է կարգավորվել pi- ի կարգավորումներում: SSH- ն ձեր pi- ի տերմինալն օգտագործելու միջոց է ՝ միևնույն ցանցում չլինելով, ինչպես նաև pi- ից ցուցադրվող ելքը չօգտագործելիս: Սա թույլ է տալիս ինձ թարմացնել իմ կայքը այլ համակարգչից և փոփոխությունները մղել դեպի իմ pi:

Հետևեք նկարներին ՝ նավահանգստի փոխանցում ստեղծելու համար:

DNS ծառայություն

Ձեզ անհրաժեշտ կլինի այնպիսի ծառայություն, որը կապի ձեր ip հասցեն վեբ հասցեի անվան հետ: Ձեր կայք մուտք գործելու համար դուք կկարողանաք մուտքագրել ձեր երթուղիչների գլոբալ IP հասցեն, որին հաջորդում է պորտի համարը: Այնուամենայնիվ, սա դժվար է, հատկապես, եթե ձեր գլոբալ ip- ն փոխվի: Այն, ինչ անում է DNS ծառայությունը, հետևում և թարմացնում է այս փոփոխությունները, որպեսզի ձեր վեբ անունը և ip- ն կապված լինեն: Ես ընտրում եմ օգտագործել անվճար ծառայություն no-ip- ի միջոցով: Դուք կարող եք վճարել այն ամենի համար, ինչ ցանկանում եք: Սա պարզապես ազատ ճանապարհ է, որը ես գիտեմ:

www.noip.com/

Քայլ 3. Pi- ի վրա անհրաժեշտ ծրագրակազմի տեղադրում

Pi- ի վրա անհրաժեշտ ծրագրաշարի տեղադրում
Pi- ի վրա անհրաժեշտ ծրագրաշարի տեղադրում
Pi- ի վրա անհրաժեշտ ծրագրաշարի տեղադրում
Pi- ի վրա անհրաժեշտ ծրագրաշարի տեղադրում
Pi- ի վրա անհրաժեշտ ծրագրաշարի տեղադրում
Pi- ի վրա անհրաժեշտ ծրագրաշարի տեղադրում
Pi- ի վրա անհրաժեշտ ծրագրաշարի տեղադրում
Pi- ի վրա անհրաժեշտ ծրագրաշարի տեղադրում

Եթե դուք ներբեռնել եք իմ GitHub ծածկագիրը, ապա ձեզ այլևս ոչինչ պետք չի լինի, բացի գործարկել պարզ npm մեկնարկի հրամանը ՝ կայքը գործարկելու համար: Այնուամենայնիվ, քանի որ սա խորացված ձեռնարկ է, ես կբացատրեմ, թե ինչպես տեղադրել բոլոր անհրաժեշտ ծրագրակազմը և փաթեթները:

Մինչ ձեր pi կամ linux համակարգչում (պատուհանների օգտագործման համար կլինեն տարբեր հրամաններ), գործարկեք հետևյալ հրամանները:

Ես դրանք բաժանել եմ որպես առանձին քայլեր ՝ ավելի հեշտ դարձնելու համար:

1. Տեղադրեք node.js և npm

Node.js- ը հիմնականում java սցենար է, որը ստեղծում է սերվերը: NPM- ը հանգույցների փաթեթի կառավարիչ է և կարգավորում է node.js.- ի հետ անհրաժեշտ բոլոր միջին սարքավորումները:

Տեղադրելու համար գործարկեք հետևյալ հրամանները linux կամ mac մեքենայի վրա:

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

Windows- ում ներբեռնելու համար պարզապես օգտագործեք այստեղ գտնված exe- ն:

Այս հղումը Linux- ի օգնության համար է, եթե ոչ ազնվամորու pi- ի վրա:

2. Տեղադրեք MongoDB- ը

MongoDB- ն հենց դա է ՝ տվյալների բազա: Ես օգտագործում եմ սա իմ վեբ էջի մուտքի և երթևեկի հաշվիչի մասի համար:

Տեղադրելու համար գործարկեք հետևյալ հրամանները linux կամ mac մեքենայի վրա:

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

արձագանք «deb https://repo.mongodb.org/apt/debian jessie/mongodb-org/3.4 հիմնական» | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

sudo apt-get թարմացում

sudo apt-get install -y mongodb-org

Windows- ում ներբեռնելու համար պարզապես օգտագործեք այստեղ գտնված exe- ն:

Այս հղումը Linux- ի օգնության համար է, եթե ոչ ազնվամորու pi- ի վրա:

3. Տեղադրեք Grunt- ը

Grunt- ը նման է npm- ին, քանի որ այն կարող եք օգտագործել այլ հավելումների հետ համատեղ: Ես այն չեմ օգտագործում իմ հավելվածի համար, սակայն դա շատ օգտակար է առաջադրանքների ավտոմատացման ժամանակ: Այս քայլը կարելի է ամբողջությամբ բաց թողնել, որպեսզի ձեր ծրագիրը գործի:

Windows- ի, mac- ի կամ linux- ի համար օգտագործեք հետևյալ հրամանը:

npm տեղադրել -g grunt -cli

4. Տեղադրեք Express

Express- ը հանգույց js շրջանակը օգտագործելու հեշտ միջոց է: Մենք պատրաստվում ենք տեղադրել էքսպրես գեներատոր: Սա ստեղծում է վեբ ծրագրի հեշտ օգտագործման շրջանակ:

Windows- ի, mac- ի կամ linux- ի համար օգտագործեք հետևյալ հրամանը:

npm տեղադրել express -generator -g

Քայլ 4. Ստեղծեք Express Node.js հավելված

Ստեղծեք Express Node.js հավելված
Ստեղծեք Express Node.js հավելված
Ստեղծեք Express Node.js հավելված
Ստեղծեք Express Node.js հավելված

Գնացեք այն պանակի գտնվելու վայրում, որտեղ նախատեսում եք ունենալ ձեր ծրագիրը: Այստեղ մտնելուց հետո բոլոր ապագա տեղադրումները կլինեն այս պանակի ներսում:

Գրացուցակը փոխելու համար գործարկեք հետևյալ հրամանները linux կամ mac մեքենայի վրա:

sudo cd/home/pi/myapp

Windows- ի համար.

cd C: / Users / pi / Desktop / myapp

Օգտագործեք էքսպրես գեներատորը `անհրաժեշտ հանգույց js շրջանակ ստեղծելու համար:

արտահայտել nameofmyapp

Սա կստեղծի մերկ արտահայտիչ node.js նախագիծ, այս քայլի ընթացքում կարող եք խմբագրել դրա հնարավորությունները ՝ գտնելով տարբեր հրամաններ, ինչպես երևում է ստորև -h հրամանի միջոցով: Կամ դուք կարող եք ձեռքով խմբագրել ստեղծված ձևանմուշը, ինչպես ես ունեմ: Այս մասին ավելի մանրամասն կքննարկեմ 2 -րդ մասում: Դուք կարող եք այլ փոփոխականներ ավելացնել այս ծածկագրին `ձեր դիմումի պարամետրերը փոխելու համար, ինչպիսիք են html- ի, ղեկի, jade- ի և այլնի օգտագործումը: Դրա համար գործարկեք հրամանը.

արտահայտել -հ

Շարունակեք կարգավորել ձեր node.js վեբ ծրագիրը `գործարկելով հետևյալ հրամանները.

cd nameofmyapp

npm տեղադրում

Սա տեղադրում է բոլոր անհրաժեշտ փաթեթները, որոնք անհրաժեշտ կլինեն ձեր node.js վեբ ծրագրին գործարկելու համար և ավելի շատ, որոնք հասանելի են օգտագործման համար:

Այս օրինակում հայտի ֆայլի ուղին կլինի.

/տուն/pi/myapp/nameofmyapp

Դա պայմանավորված է նրանով, որ էքսպրես գեներատորը ստեղծում է ֆայլ ՝ հիմնվելով այն տողի վրա, որը տեղադրում ես դրանից հետո: Եթե դուք արդեն գտնվում եք ցանկալի գրացուցակում, պարզապես օգտագործեք express:

Քայլ 5: Գործարկեք ձեր վեբ ծրագիրը

Գործարկեք ձեր վեբ ծրագիրը
Գործարկեք ձեր վեբ ծրագիրը
Գործարկեք ձեր վեբ ծրագիրը
Գործարկեք ձեր վեբ ծրագիրը

Ձեր node.js վեբ ծրագիրը գործարկելու համար գործարկեք հրամանը.

npm սկիզբը

Կոդավորման ընթացքում այն ավելի արդյունավետ դարձնելու համար, որպեսզի մեր դիմումը ինքնաբերաբար թարմացվի փոփոխություններ կատարելուց հետո, մենք կտեղադրենք nodemon:

npm տեղադրել -g նոդեմոն

Ահա այն, որտեղ ձեռնարկների մեծամասնությունը ձեզ ասում է, որ զվարճացեք և թույլ տվեք պարզել ոտքի ծանր աշխատանքը: Հաջորդ քայլերում ես պատրաստվում եմ քայլել ձեզ, թե ինչպես եմ կազմել իմ ծրագիրը:

Քայլ 6: Վարկ

Իրականում քայլ չէ, բայց ես ուզում եմ թվարկել այս ձեռնարկի իմ աղբյուրներն ու ոգեշնչումը:

Այս Github ReadMe- ը գրել է լավ ընկերը ՝ մեր ավագ դիզայնի նախագծի վրա աշխատելիս, և այն շատ ոգեշնչման աղբյուր է ծառայել, թե ինչպես ստեղծել իմ կայքը:

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

Այս ձեռնարկը օգտակար գործիք էր վեբ ծրագիր ստեղծելու գործընթացում:

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

Node.js կայքում լրացուցիչ տեղեկությունների համար այցելեք իմ Մաս 2:

Խորհուրդ ենք տալիս: