Kaip prijungti Node.js programą

Kaip Prijungti Node Js Programa



Programos dockerizavimas apima visų būtinų sąlygų, reikalingų programai vykdyti, nurodymą ir Dockerfile naudojimą kuriant specializuotą Docker vaizdą, kurį galima bendrinti su įvairiais įrenginiais. „Dokeravimas“ Node.js “ programa padidina nuoseklumą ir užtikrina patogų derinimą kūrėjo pabaigoje.

Būtinos sąlygos







Būtinos sąlygos „ Node.js “ paraiška apima šiuos dalykus:



  • Docker diegimas.
  • Pagrindinis Node.js programos supratimas.

Kaip prijungti „Node.js“ programą?

A “ Node.js “ programa gali būti prijungta prie doko atliekant šiuos veiksmus:



1 veiksmas: sukurkite failą „package.json“.





Pirmiausia sukurkite naują katalogą, kuriame bus visi failai. Šiame kataloge sukurkite „ package.json “ failą, vaizduojantį programą ir jos priklausomybes:

{
'vardas' : „docker_web_app“ ,
'versija' : '1.0.0' ,
'apibūdinimas' : „Node.js on Docker“ ,
'autorius' : 'Pirmas Paskutinis ' ,
'pagrindinis' : 'serveris.js' ,
'scenarijai' : {
'pradėti' : 'mazgo serveris.js'
} ,
'priklausomybės' : {
'išreikšti' : '^4.18.2'
} }



2 veiksmas: sugeneruokite failą „package-lock.json“.

Failo „package.json“ viduje paleiskite „ npm diegimas “ cmdlet. Tai sukurs „ package-lock.json “ failą, kuris nukopijuotas į „Docker“ vaizdą, kaip nurodyta toliau:

npm diegti

3 veiksmas: sukurkite serverį

Po to sukurkite „ server.js “ failą, kuris deklaruoja žiniatinklio programą, naudojančią „ Express.js ' sistema:

„naudokite griežtai“ ;

const express = reikalauti ( 'išreikšti' ) ;

const PORT = 8080 ;
const HOST = „0.0.0.0“ ;

const programa = express ( ) ;
app.get ( '/' , ( req, res ) = > {
pers.siųsti ( 'Labas pasauli' ) ;
} ) ;

app.klausykite ( PORT, HOST, ( ) = > {
console.log ( ` Veikia http: // ${HOST} : ${PORT} ` ) ;
} ) ;

Dabar pereikime prie metodų, kaip vykdyti programą „Docker“ konteineryje naudojant oficialų „Docker“ vaizdą.

4 veiksmas: sukurkite „Dockerfile“.

Sukurkite Dockerfile rankiniu būdu tame pačiame kataloge, kuriame yra visi failai. Šiame faile parašykite šią kodo eilutę:

IŠ mazgo: 18
DARBO VADOVAS / usr / src / programėlė
KOPIJUOJI paketą * .json . /
RUN npm diegti
KOPIJUOT. .
ATSAKYTI 8080
CMD [ 'mazgas' , 'serveris.js' ]

Aukščiau pateiktame kodo fragmente atlikite toliau nurodytus veiksmus.

  • Pirmiausia naudokite naujausią ilgalaikio palaikymo 18 mazgo versiją kaip pagrindinį vaizdą, esantį Docker Hub .
  • Po to sukurkite katalogą, kuriame būtų programos kodas vaizde.
  • Tai rodo programos darbo katalogą.
  • Dabar įdiekite programos priklausomybes naudodami „ npm “.
  • Pastaba: Jei naudojama 4 ar senesnė npm versija, „package-lock.json“ failas nebus sukurtas.
  • Dabar nukopijuokite „ package.json “ failą. Taip pat sujunkite programos šaltinio kodą „Docker“ vaizde naudodami „ KOPIJA “ instrukcija.
  • Pasinaudokite ' ATSAKYTI “ nurodymą leisti programai susieti su 8080 prievadu.
  • Galiausiai, apibrėžkite cmdlet, kad paleistumėte programą per CMD, kuri apibrėžia vykdymo laiką. Čia „ mazgo serveris.js ” cmdlet bus naudojamas serveriui inicijuoti.

5 veiksmas: sukurkite „.dockerignore“ failą

Sukurkite „.dockerignore“ failą „ Dockerfile “ katalogą / aplanką, kurį sudaro toliau pateiktas turinys:

mazgų_moduliai
npm-debug.log

Šiame turinyje išvengiama vietinių modulių ir derinimo žurnalų, kurie atitinkamai turi būti nukopijuoti į „Docker“ vaizdą.

6 veiksmas: sukurkite vaizdą

Dabar kataloge, kurį sudaro Dockerfile, sukurkite vaizdą naudodami toliau nurodytą cmdlet:

dokerio konstrukcija. -t nodejs / mazgas-web-app

Šioje cmdlet „ nodejs “ reiškia katalogo pavadinimą, todėl atitinkamai nurodykite cmdlet ir „ -t “ vėliavėlė pažymi vaizdą.

Dabar surašykite vaizdus naudodami šią komandą:

dokerio vaizdai

7 veiksmas: paleiskite vaizdą

Vykdykite / paleiskite vaizdą naudodami toliau nurodytą cmdlet:

dokininko bėgimas -p 49160 : 8080 -d nodejs / mazgas-web-app

Čia „ -p “ vėliavėlė nukreipia viešąjį uostą į privatų konteineryje esantį uostą ir „ -d “ vėliavėlė vykdo konteinerį atskirtu režimu, t. y. fone.

8 veiksmas: sugeneruokite programos išvestį

Dabar išspausdinkite programos išvestį naudodami šias komandas:

dokininkas ps
dokerio rąstai 77b1e3c8576e

Jei reikia naršyti konteinerio apvalkale, naudokite „ vykdytojas ' cmdlet:

dokininkas vykdytojas -tai 77b1e3c8576e / šiukšliadėžė / bash

Čia, ' 77b1e3c8576e “ reiškia konteinerio ID, kurį galima nukopijuoti naudojant vykdomą dokeris ps “ komandą anksčiau.

9 veiksmas: programos testavimas

Norėdami išbandyti programą, gaukite programos, kurią „Docker“ susiejo, prievadą:

dokininkas ps

Aukščiau pateiktoje cmdlet „Docker“ susiejo „ 8080 'uostas konteineryje į uostą' 49160 “ ant mašinos.

10 veiksmas: programos iškvietimas

Iškvieskite programą naudodami „ garbanoti ” cmdlet, nurodydami aukščiau susietą prievadą ir įvesdami reikiamas reikšmes:

garbanoti -i localhost: 49160

11 veiksmas: uždarykite / užmuškite programą

Galiausiai išjunkite programą naudodami „ nužudyti “ cmdlet:

dokininkas nužudyti 77b1e3c8576e

Taip pat patvirtinkite, ar programa sustojo, naudodami šią komandą su įvesties reikšmėmis:

garbanoti -i localhost: 49160

Išvada

A “ Node.js “ programa gali būti prijungta prie doko sukuriant serverį, dockerfile, „.dockerignore“ failą, sukuriant ir paleidžiant vaizdą, sugeneruojant programos išvestį ir išbandant, uždarant ir patvirtinant programos sustabdymą. Šiame straipsnyje išsamiai aprašomas Node.js programos prijungimas prie doko.