Peb ib txwm tsim ntau qhov project thiab daim ntawv thov raws li novices, tab sis qhov no tsuas yog ib nrab ntawm qhov sib npaug.
Peb kuj xav kom lwm lub ntiaj teb tuaj yeem siv thiab sim cov ntawv thov no, txawm hais tias nws yog rau kev nthuav qhia, tus neeg ua haujlwm yav tom ntej, lossis tsuas yog kom tau tawm ntawm txhua tus neeg.
Peb yuav tsum muab cov apps no tso rau hauv lub server rau pej xeem ua qhov no.
Heroku yog lub platform tswj hwm huab raws li kev pabcuam (PaaS) rau kev tsim, xa tawm, thiab tswj cov apps.
Lub platform yog hloov tau thiab tsim nrog DX hauv siab kom haum rau koj thiab koj pab neeg txoj kev txhim kho kev xaiv thaum ua kom koj tsom mus rau thiab ua haujlwm tau zoo.
Heroku yog siv los ntawm cov neeg tsim khoom, pab pawg, thiab cov lag luam ntawm txhua yam los tsim, tswj, thiab loj hlob tej yaam num. Txawm hais tias koj tab tom tsim cov qauv me me los yog cov khoom lag luam tseem ceeb, Heroku lub platform tswj hwm tag nrho muab txoj hauv kev yooj yim tshaj plaws los xa cov apps sai.
Ib qho ntawm Heroku cov yam ntxwv tseem ceeb yog lub peev xwm los siv, tswj, thiab ntsuas cov haujlwm uas koj nyiam hom lus [Node, Ruby, Python, Java, PHP, Mus, thiab lwm yam].
Hauv tsab xov xwm no, kuv yuav qhia koj yuav ua li cas siv qhov project Node.js uas twb muaj lawm ntawm Heroku.
yuavtsum tau kawm uantej
Kab lus no cov kev coj ua zoo tshaj plaws xav tias koj muaj:
- Ntsia node.js s npm.
- Ib Heroku account yog ua dawb xwb.
- Ib daim ntawv thov Node.js uas twb muaj lawm
- Heroku cov command-line interface (CLI).
1. Tshaj tawm koj daim ntawv thov kev vam meej
Cov ntaub ntawv package.json qhia txog qhov kev vam khom yuav tsum tau nruab nrog koj qhov project.
Khiav cov lus txib npm init hauv paus directory ntawm koj qhov project los tsim cov ntaub ntawv package.json rau nws. Nws yuav qhia koj yuav ua li cas ua ib daim ntawv package.json.
Los ntawm kev tso lawv tseg, koj tuaj yeem hla ib qho ntawm cov lus nug. Ntawm Windows, tso Git Bash program los tso lub plhaub hais kom ua.
Lub resulting package.json cov ntaub ntawv yog raws li nram no:
Siv 'npm nruab pkg>' txhawm rau txhim kho kev vam meej.
Qhov no yuav nruab lub pob thiab ua rau nws muaj kev vam khom ntawm 'package.json' cov ntaub ntawv Cov ntaub ntawv Rau nruab nthuav qhia, piv txwv li, ntaus 'npm install express'.
Ua kom paub tseeb tias tsis muaj cov pob khoom hauv qib siv. Koj pob ntawv tsis muaj kev vam meej. Thaum sim xa mus rau Heroku, JSON cov ntaub ntawv yuav ua rau muaj teeb meem.
Txhawm rau daws qhov teeb meem no, ua haujlwm `rm -rf node modules; npm nruab - ntau lawm' ntawm koj cov kab hais kom ua hauv zos, thiab tom qab ntawd sim tso koj lub app hauv zos los ntawm kev nkag mus rau Heroku lub vev xaib hauv zos.
Yog tias ib qho ntawm koj lub pob qhov kev cia siab ploj lawm .json cov ntaub ntawv, koj yuav tsum pom cov lus yuam kev uas qhia tias qhov twg tsis tuaj yeem nyob.
2. Qhia qhov node's version
Koj cov ntaub ntawv package.json tseem yuav suav nrog Node.js version uas yuav raug siv los ua koj daim ntawv thov ntawm Heroku.
Koj yuav tsum ib txwm siv Node.js version uas sib haum rau lub sijhawm ua haujlwm uas koj ua haujlwm nrog. Hom node —version nrhiav koj version.
Nov yog qhov koj cov ntaub ntawv package.json yuav zoo li cas:
Tam sim no hais tias qhov kev vam khom tau raug teeb tsa thiab cov node version yuav siv tau raug teev tseg, cov ntaub ntawv package.json yuav tsum zoo li no:
3. Tsim ib qhov Procfile
Ua ib qho Procfile hauv lub hauv paus ntawm koj daim ntawv tais ceev tseg (kom paub tseeb tias tsis muaj qhov txuas ntxiv thiab tsab ntawv "P" yog qhov loj).
Nws yog nyob rau hauv cov ntaub ntawv Heroku uas koj yuav teeb tsa Dynos nqis, xws li yuav ua li cas Heroku yuav pib lub node js web server tom qab uploading lub app.
Lub Procfile hauv cov qauv app koj siv zoo li no:
4. Tsim koj lub app thiab sim nws hauv zos
Txhawm rau txhim kho qhov kev vam khom koj tau qhia hauv koj cov ntaub ntawv package.json, khiav npm teeb tsa cov lus txib hauv koj lub zos app directory.
Siv Heroku cov lus txib hauv zos, uas suav nrog Heroku CLI, pib koj lub app hauv zos.
Tam sim no koj yuav tsum nkag mus rau koj lub app ntawm https://localhost:5000/.
5. Tsim cov khoom qub
Tsim ib cov ntaub ntawv .gitignore uas zoo li qhov no kom tsim cov khoom cuav tawm ntawm kev hloov kho:
6. Xa koj daim ntawv thov node.js rau Heroku
Cov lus qhia hauv qab no yuav xa koj daim ntawv thov mus rau Heroku.
7. Heroku Logs
Koj tuaj yeem siv ib qho ntawm cov lus txib kom tau txais cov ntaub ntawv hais txog koj qhov kev khiav haujlwm. Qhov no muaj txiaj ntsig zoo rau kev daws teeb meem.
xaus
Nrog koj zoo siab, koj daim ntawv thov Node.js tam sim no nyob ntawm Heroku. Nws yog huab platform uas tso cai rau cov lag luam tsim, faib, tswj, thiab loj hlob apps.
Heroku tau nyob ntawd rau peb nyob rau lub sijhawm tshiab ntawm serverless thiab containerization, qhov twg peb tsuas yog nyem deb ntawm kev xa peb cov phiaj xwm tag nrho, thiab nws tseem pab ntau lab tus neeg siv siv lawv cov haujlwm nrog kev yooj yim.
Sau ntawv cia Ncua