NodeJS

Knooppunt instellen.js-ontwikkelomgeving

Knooppunt instellen.js-ontwikkelomgeving
Je kunt Node altijd installeren.js op uw computer en voer Node . uit.js-applicaties daar. Maar er zijn situaties waarin u Docker wilt gebruiken om uw Node te doen.js ontwikkeling.

Laten we bijvoorbeeld zeggen dat u Node . niet wilt installeren.js op uw computer en u wilt toch Node . ontwikkelen.js-applicaties of test een bestaande. In dat geval kunt u gewoon een Node.js Docker-container.

Een ander voorbeeld is waar u uw Node moet testen.js-toepassing op verschillende versies van Node.js. In dat geval kunt u verschillende Node.js Docker-containers met een andere versie van Node.js geïnstalleerd om uw toepassing te testen.

In dit artikel laat ik je zien hoe je Node . instelt.js-ontwikkelomgeving met Docker. Dus laten we beginnen.

Projectmap instellen:

In deze sectie zal ik een van mijn Node . klonen.js API-app van GitHub naar mijn ~/Projecten/ directory alleen voor het testen van Docker Node.js-ontwikkelomgeving Ik sta op het punt je te laten zien hoe je moet instellen. Dit is niet verplicht. Je kunt altijd je eigen Node gebruiken.js-app als je wilt.

Eerst ga ik naar mijn ~/Projecten/ map als volgt:

$ cd ~/Projecten/

Nu ga ik mijn . klonen shovon8/hoekig-held-api GitHub-repository als volgt:

$ git kloon https://github.com/shovon8/angular-held-api

De projectbestanden bevinden zich in de hoekige-held-api/ map zoals je kunt zien in de onderstaande schermafbeelding.

Knooppunt.js Docker-afbeeldingen:

Er zijn officiële container-images voor verschillende versies van Node.js gebouwd bovenop verschillende Linux-distributies op DockerHub. Bezoek https://hub.havenarbeider.com/_/node/ vanuit je favoriete browser om de Node te vinden.js-afbeelding die je nodig hebt. Zoals u kunt zien, is de tagnaam voor alle Node.js-afbeeldingen worden weergegeven op de DockerHub-pagina van Node.js. U kunt ofwel Debian Jessie/Stretch, Alpine, ChakraCore Linux-distributiegebaseerde afbeeldingen gebruiken voor verschillende versies van Node.js.

Meestal hoef je niet veel te weten om een ​​Node te gebruiken.js Docker-afbeelding. Als u Node . wilt gebruiken.js versie 12, dan hoef je alleen maar te schrijven knoop:12 wanneer je een container maakt. Voor Knooppunt.js 10, het is knoop: 10. Voor Knooppunt.js 8, het is knoop: 8. Het is zo simpel.

Het knooppunt configureren.js-ontwikkelomgeving:

In deze sectie ga ik Linux-opdrachtaliassen configureren voor mijn Node.js API-app. Op die manier kan ik gemakkelijk elke versie van Node . gebruiken.js Ik wil mijn app draaien.

In elk van mijn Node.js-projectdirectory, ik zal een nieuw bestand maken bron. In dat bestand bewaar ik de commando-aliassen zoals knoop12 voor Knooppunt.js 12 runtime, knooppunt10 voor Knooppunt.js 10 runtime, knooppunt8 voor Knooppunt.js 8 runtime draait op Docker. U kunt hetzelfde hergebruiken bron bestand met een kleine wijziging op uw andere Node.js-projecten ook.

Navigeer eerst als volgt naar uw projectdirectory:

$ cd hoekig-held-api/

Maak nu een bron bestand met het volgende commando:

$ nano-bron

Typ nu de volgende regels in het bronbestand:.

alias node12='docker run -it --rm --name hero-api -p 4242:4242 -v
"$PWD:/usr/src/app" -w /usr/src/app-knooppunt:12'
alias node10='docker run -it --rm --name hero-api -p 4242:4242 -v
"$PWD:/usr/src/app" -w /usr/src/app-knooppunt:10'
alias node8='docker run -it --rm --name hero-api -p 4242:4242 -v
"$PWD:/usr/src/app" -w /usr/src/app-knooppunt:8'

Hier, -het betekent, voer de container uit in interactieve modus.

-rm betekent dat de container automatisch wordt verwijderd wanneer deze niet langer nodig is.

-naam held-api definieert een naam voor de container.

-blz. 4242:4242 betekent de containerhaven; 4242 wordt doorgestuurd naar de bestemmingspoort (op uw computer) 4242. Het formaat van deze optie is -p bestemming:bron. Onthoud dat de eerste poort voor de dubbele punt (:) de bestemmingspoort is. Als u toegang wilt tot uw toepassing op een andere poort dan 4242 op uw computer, moet u de bestemmingspoort wijzigen change. Als uw toepassingen op een andere poort draaien dan 4242. Dan moet je de bronpoort wijzigen.

OPMERKING: Omdat ik slechts één van de containers tegelijk zal gebruiken, is de naam en haven van bestemming kan hetzelfde zijn. Als u uw Node wilt uitvoeren of testen.js-toepassing op meerdere Node.js-versie tegelijkertijd, zorg er dan voor dat de naam en haven van bestemming is verschillend voor elk van de containers in het bronbestand.

Als u klaar bent, slaat u het bestand op door op . te drukken + X gevolgd door ja en .

Schakel nu de aliassen in met de volgende opdracht:

$ bron bron

Nu kunt u elke versie van node runtime uitvoeren wanneer u maar wilt met knoop12, knooppunt10, knooppunt8 commando's zoals je kunt zien in de onderstaande schermafbeelding.

Hero API-knooppunt uitvoeren.js-app:

Laten we nu eens kijken hoe we de hoekige-held-api app uit mijn GitHub-repository met deze setup. Ik ga Node . gebruiken.js 12 runtime eerst, ga dan voor Node.js 10 en Node.js 8 runtime om u te laten zien dat het in elk van de versies werkt.

De API-app heeft geen node-modules geïnstalleerd. U moet dus alle vereiste knooppuntmodules installeren met: npm installeren commando als volgt:

$ node12 npm installeren

De node-modules zijn geïnstalleerd zoals je kunt zien in de onderstaande schermafbeelding.

Voer nu de Node . uit.js API-app als volgt:

$ node12 npm test uitvoeren

Zoals je kunt zien, draait de API-server op poort 4242 op de container. Ik heb de poort ook doorgestuurd naar 4242 op mijn computer. Dus ik zou er toegang toe moeten hebben op poort 4242.

Ja, ik heb er toegang toe. Het werkt zoals verwacht.

Stop nu de container door op te drukken + c.

Laten we proberen de API-app uit te voeren met Node.js-versie 10.

$ node10 npm test uitvoeren

Zoals je kunt zien, draait hij.

Het werkt voor Node.js 10 ook.

Laten we tot slot eens proberen voor Node.js versie 8.

$ node8 npm test uitvoeren

De API-app draait op Node.js 8 runtime ook.

Perfect! Het werkt correct.

Dus zo stel je Node in.js-ontwikkelomgeving met Docker. Bedankt voor het lezen van dit artikel.

Strijd om Wesnoth Zelfstudie
The Battle for Wesnoth is een van de meest populaire open source strategiespellen die je op dit moment kunt spelen. Dit spel is niet alleen al heel la...
0 A.D. zelfstudie
Van de vele strategiespellen die er zijn, 0 A.D. slaagt erin om op te vallen als een uitgebreide titel en een zeer diep, tactisch spel ondanks dat het...
Unity3D-zelfstudie
Inleiding tot Unity 3D Unity 3D is een krachtige game-ontwikkelingsengine. Het is platformoverschrijdend, zodat je games voor mobiel, internet, deskto...