Sovelluksen telakointiin kuuluu kaikkien sovelluksen suorittamiseen vaadittavien edellytysten määrittäminen ja sitten Docker-tiedoston käyttäminen erikoistuneen Docker-kuvan rakentamiseen, joka voidaan jakaa useiden koneiden kanssa. telakointi Node.js ” -sovellus parantaa johdonmukaisuutta ja varmistaa kätevän virheenkorjauksen kehittäjän lopussa.
Edellytykset
Edellytykset telakointiin Node.js ' sovellus sisältää seuraavat:
- Dockerin asennus.
- Node.js-sovelluksen peruskäsitys.
Kuinka telakoida Node.js-sovellus?
A ' Node.js ' -sovellus voidaan telakoida seuraavilla vaiheilla:
Vaihe 1: Luo 'package.json'-tiedosto
Tee ensin uusi hakemisto, johon kaikki tiedostot sisältyvät. Luo tähän hakemistoon ' package.json '-tiedosto, joka edustaa sovellusta sen riippuvuuksineen:
{'nimi' : 'docker_web_app' ,
'versio' : '1.0.0' ,
'kuvaus' : 'Node.js Dockerissa' ,
'kirjailija' : 'Ensimmäinen viimeinen ' ,
'pää' : 'server.js' ,
'käsikirjoitukset' : {
'alkaa' : 'solmupalvelin.js'
} ,
'riippuvuudet' : {
'ilmaista' : '^4.18.2'
} }
Vaihe 2: Luo 'package-lock.json'-tiedosto
Suorita 'package.json'-tiedostossa ' npm asennus ” cmdlet. Tämä luo ' package-lock.json ”-tiedosto, joka kopioidaan Docker-kuvaan seuraavasti:
npm Asentaa
Vaihe 3: Luo palvelin
Luo sen jälkeen ' server.js tiedosto, joka ilmoittaa verkkosovelluksen, joka käyttää Express.js 'kehys:
'käytä tiukkaa' ;const express = vaadi ( 'ilmaista' ) ;
const PORT = 8080 ;
const HOST = '0.0.0.0' ;
const app = express ( ) ;
app.get ( '/' , ( req, res ) = > {
res.send ( 'Hei maailma' ) ;
} ) ;
app.listen ( SATAMA, isäntä, ( ) = > {
console.log ( ` Käynnissä http: // ${HOST} : ${PORT} ` ) ;
} ) ;
Siirrytään nyt menetelmiin, joilla sovellus suoritetaan Docker-säilön sisällä virallisen Docker-kuvan kautta.
Vaihe 4: Luo Docker-tiedosto
Luo Docker-tiedosto manuaalisesti samaan hakemistoon, joka sisältää kaikki tiedostot. Kirjoita tähän tiedostoon seuraava koodirivi:
FROM solmusta: 18TYÖOHJ / usr / src / sovellus
KOPIOINTI paketti * .json . /
RUN npm Asentaa
KOPIO . .
PALJISTA 8080
CMD [ 'solmu' , 'server.js' ]
Käytä yllä olevassa koodinpätkässä alla annettuja ohjeita:
- Käytä ensin solmun uusinta pitkäaikaisen tuen versiota 18 peruskuvana Docker Hub .
- Luo sen jälkeen hakemisto, joka sisältää kuvan sovelluskoodin.
- Tämä edustaa sovelluksen työhakemistoa.
- Asenna nyt sovellusriippuvuudet '' npm ”.
- Huomautus: Jos käytössä on npm-versio 4 tai aikaisempi, 'package-lock.json'-tiedostoa ei luoda.
- Kopioi nyt ' package.json ” tiedosto. Liitä myös sovelluksen lähdekoodi Docker-kuvaan ' KOPIO ' ohje.
- Käytä ' PALJISTA ” ohje antaa sovelluksen sitoutua porttiin 8080.
- Lopuksi määritä cmdlet sovelluksen suorittamiseksi CMD:n kautta, joka määrittää suoritusajan. Täällä ' solmupalvelin.js ” cmdlet-komentoa käytetään palvelimen käynnistämiseen.
Vaihe 5: Luo .dockerignore-tiedosto
Luo '.dockerignore'-tiedosto ' Docker-tiedosto ” hakemisto/kansio, joka sisältää alla olevan sisällön:
solmu_moduulitnpm-debug.log
Tämä sisältö välttää paikallisten moduulien ja virheenkorjauslokien kopioimisen Docker-kuvaan.
Vaihe 6: Rakenna kuva
Luo nyt kuva Docker-tiedoston sisältävässä hakemistossa alla mainitulla cmdletillä:
telakkarakennelma. -t nodejs / solmu-web-sovellus
Tässä cmdletissä ' nodejs ' viittaa hakemiston nimeen, joten määritä cmdlet vastaavasti ja ' -t ” lippu merkitsee kuvan.
Listaa nyt kuvat tällä komennolla:
telakkakuvia
Vaihe 7: Suorita kuva
Suorita/suorita kuva käyttämällä alla olevaa cmdlet-komentoa:
telakkajuoksu -s 49160 : 8080 -d nodejs / solmu-web-sovellus
Täällä ' -s ' -lippu ohjaa julkisen sataman kontissa olevaan yksityiseen satamaan ja ' -d ” -lippu suorittaa kontin irrotetussa tilassa, eli taustalla.
Vaihe 8: Luo sovelluksen lähtö
Tulosta nyt sovelluksen tulos käyttämällä seuraavia komentoja:
satamatyöläinen pstelakointilokit 77b1e3c8576e
Jos sinun on navigoitava konttikuoren sisällä, käytä ' exec ” cmdlet:
satamatyöläinen exec -se 77b1e3c8576e / roskakori / lyödä
Täällä, ' 77b1e3c8576e ' edustaa säilön tunnusta, joka voidaan kopioida suoritetun ' telakka ps ”komento aiemmin.
Vaihe 9: Sovelluksen testaus
Sovelluksen testaamista varten nouda Dockerin kartoittaman sovelluksen portti:
satamatyöläinen ps
Yllä olevassa cmdletissä Docker kartoitti ' 8080 'satama kontin sisällä satamaan' 49160 ' koneessa.
Vaihe 10: Sovelluksen käynnistäminen
Avaa sovellus '' kiemura ” cmdlet viittaamalla yllä kartoitettuun porttiin ja syöttämällä vaaditut arvot:
kiemura -i paikallinen isäntä: 49160
Vaihe 11: Sulje/lopeta sovellus
Lopuksi sulje sovellus ' tappaa ” cmdlet:
satamatyöläinen tappaa 77b1e3c8576e
Varmista myös, onko sovellus pysähtynyt tällä komennolla syötearvoilla:
kiemura -i paikallinen isäntä: 49160
Johtopäätös
A ' Node.js ' -sovellus voidaan telakoida luomalla palvelin, dockeritiedosto, '.dockerignore' -tiedosto, rakentamalla ja suorittamalla kuva, luomalla sovelluksen tulos sekä testaamalla, sulkemalla ja vahvistamalla sovelluksen pysäyttäminen. Tässä artikkelissa käsitellään Node.js-sovelluksen telakointia.