Lietojumprogrammas dokerizēšana ietver visu lietojumprogrammas izpildei nepieciešamo priekšnosacījumu norādīšanu un pēc tam Dockerfile izmantošanu, lai izveidotu specializētu Docker attēlu, ko var koplietot ar dažādām iekārtām. Dokerēšana Node.js ” lietojumprogramma uzlabo konsekvenci un nodrošina ērtu atkļūdošanu izstrādātāja galā.
Priekšnoteikumi
Priekšnosacījumi, lai dokerētu ' Node.js ” pieteikumā ir iekļauts šāds:
- Docker uzstādīšana.
- Pamata izpratne par Node.js lietojumprogrammu.
Kā Dockerize Node.js lietojumprogrammu?
A ' Node.js Lietojumprogrammu var dockerizēt, veicot šādas darbības:
1. darbība. Izveidojiet failu “package.json”.
Vispirms izveidojiet jaunu direktoriju, kurā būs visi faili. Šajā direktorijā izveidojiet ' pack.json ” failu, kas attēlo lietotni kopā ar tās atkarībām:
{'vārds' : 'docker_web_app' ,
'versija' : '1.0.0' ,
'apraksts' : 'Node.js vietnē Docker' ,
'autors' : 'Pirmais Pēdējais ' ,
'galvenais' : 'serveris.js' ,
'skripti' : {
'sākt' : 'mezgls serveris.js'
} ,
'atkarības' : {
'izteikt' : '^4.18.2'
} }
2. darbība: ģenerējiet failu “package-lock.json”.
Failā “package.json” izpildiet “ npm instalēšana ” cmdlet. Tas radīs ' pack-lock.json ” failu, kas tiek kopēts uz Docker attēlu, šādi:
npm uzstādīt
3. darbība: izveidojiet serveri
Pēc tam izveidojiet ' serveris.js ' failu, kas deklarē tīmekļa lietotni, kas izmanto ' Express.js ietvars:
'izmantojiet stingri' ;const izteikt = prasīt ( 'izteikt' ) ;
const PORT = 8080 ;
const HOST = '0.0.0.0' ;
const app = express ( ) ;
app.get ( '/' , ( req, res ) = > {
atkārtoti nosūtīt ( 'Sveika pasaule' ) ;
} ) ;
app.klausīt ( OST, HOST, ( ) = > {
console.log ( ` Darbojas vietnē http: // ${HOST} : ${PORT} ` ) ;
} ) ;
Tagad pāriesim pie metodikas, lai izpildītu lietojumprogrammu Docker konteinerā, izmantojot oficiālu Docker attēlu.
4. darbība: izveidojiet Docker failu
Manuāli izveidojiet Dockerfile tajā pašā direktorijā, kurā ir visi faili. Šajā failā ierakstiet šādu koda rindu:
NO mezgla: 18DARBA DIREKTĪVĀ / usr / src / lietotne
KOPĒT paketi * .json . /
RUN npm uzstādīt
KOPĒT. .
ATKLĀJOT 8080
CMD [ 'mezgls' , 'serveris.js' ]
Iepriekš minētajā koda fragmentā veiciet tālāk norādītās darbības.
- Pirmkārt, izmantojiet mezgla jaunāko ilgtermiņa atbalsta versiju 18 kā pamatattēlu, kas ietverts Docker Hub .
- Pēc tam izveidojiet direktoriju, kurā attēlā ir ietverts lietotnes kods.
- Tas attēlo lietojumprogrammas darba direktoriju.
- Tagad instalējiet lietotņu atkarības, izmantojot “ npm ”.
- Piezīme: Ja tiek izmantota npm 4. versija vai vecāka versija, fails “package-lock.json” netiks izveidots.
- Tagad kopējiet ' pack.json ” failu. Tāpat savienojiet lietotnes avota kodu Docker attēlā, izmantojot “ KOPĒT ' instrukcija.
- Izmantojiet ' ATKLĀJOT ” instrukcija, lai ļautu lietotnei izveidot savienojumu ar portu 8080.
- Visbeidzot, definējiet cmdlet, lai izpildītu lietojumprogrammu, izmantojot CMD, kas nosaka izpildlaiku. Šeit “ mezgla serveris.js ” cmdlet tiks izmantota servera iniciēšanai.
5. darbība. Izveidojiet failu “.dockerignore”.
Izveidojiet '.dockerignore' failu mapē ' Dockerfile ” direktoriju/mapi, kas satur tālāk norādīto saturu:
node_modulesnpm-debug.log
Šis saturs izvairās no vietējiem moduļiem un atkļūdošanas žurnāliem, kas attiecīgi tiek kopēti Docker attēlā.
6. darbība: izveidojiet attēlu
Tagad direktorijā, kurā ir Dockerfile, izveidojiet attēlu, izmantojot tālāk norādīto cmdlet:
dokera uzbūve. -t nodejs / mezgla tīmekļa lietotne
Šajā cmdlet ' nodejs ' attiecas uz direktorija nosaukumu, tāpēc attiecīgi norādiet cmdlet un ' -t ” karodziņš atzīmē attēlu.
Tagad uzskaitiet attēlus, izmantojot šo komandu:
dokera attēli
7. darbība: palaidiet attēlu
Izpildiet/palaidiet attēlu, izmantojot tālāk norādīto cmdlet:
dokera skrējiens -lpp 49160 : 8080 -d nodejs / mezgla tīmekļa lietotne
Šeit “ -lpp ' karogs novirza publisko ostu uz privātu konteinerā un ' -d ” karodziņš izpilda konteineru atdalītā režīmā, t.i., fonā.
8. darbība: ģenerējiet lietotnes izvadi
Tagad izdrukājiet lietojumprogrammas izvadi, izmantojot šādas komandas:
dokeris psdoku baļķi 77b1e3c8576e
Ja ir nepieciešams pārvietoties konteinera apvalkā, izmantojiet “ izpild ” cmdlet:
dokeris izpild -tas 77b1e3c8576e / atkritumu tvertne / bash
Šeit, ' 77b1e3c8576e ” apzīmē konteinera ID, ko var kopēt, izmantojot izpildīto dokeris ps ” komandu iepriekš.
9. darbība: lietojumprogrammas pārbaude
Lai pārbaudītu lietojumprogrammu, izgūstiet tās lietotnes portu, kuru kartēja Docker:
dokeris ps
Iepriekš minētajā cmdlet Docker kartēja “ 8080 'osta konteinerā uz ostu' 49160 ” uz mašīnas.
10. darbība: lietojumprogrammas izsaukšana
Izsaukt lietojumprogrammu, izmantojot ' čokurošanās ” cmdlet, atsaucoties uz iepriekš kartēto portu un ievadot vajadzīgās vērtības:
čokurošanās -i localhost: 49160
11. darbība: aizveriet/nogaliniet lietojumprogrammu
Visbeidzot, izslēdziet lietojumprogrammu, izmantojot “ nogalināt ” cmdlet:
dokeris nogalināt 77b1e3c8576e
Tāpat apstipriniet, vai lietojumprogramma ir apstājusies, izmantojot šo komandu ar ievades vērtībām:
čokurošanās -i localhost: 49160
Secinājums
A ' Node.js ” lietojumprogrammu var dokerizēt, izveidojot serveri, dockerfile, failu “.dockerignore”, izveidojot un palaižot attēlu, ģenerējot lietotnes izvadi un pārbaudot, aizverot un apstiprinot lietojumprogrammas apturēšanu. Šajā rakstā ir aprakstīta lietojumprogrammas Node.js dokķēšana.