Een Express.js MongoDB-app implementeren naar App Service van Visual Studio Code
Implementeer de Express.js toepassing, die verbinding maakt met MongoDB met Azure App Service (in Linux) en een Cosmos DB.
Het programmeerwerk wordt voor u uitgevoerd. Deze zelfstudie is gericht op het gebruik van de lokale en externe Azure-omgevingen vanuit Visual Studio Code met Azure-extensies.
Belangrijkste taken
Deze zelfstudie bevat verschillende Azure-taken voor JavaScript-ontwikkelaars:
- Een Cosmos DB maken voor het hosten van mongoDB-database
- App Service-resource maken om de app Express.js hosten
- Een Express.js app implementeren in App Service
Voorbeeldtoepassing
De voorbeeld-Express.js-app bestaat uit de volgende elementen:
- Express.js server gehost op poort 8080
- Eenvoudige React.js weergave-engine aan serverzijde
- Systeemeigen MongoDB-API-functies voor het invoegen, verwijderen en zoeken van gegevens
Bestaand Azure-abonnement maken of gebruiken
- Een Azure-account met een actief abonnement. Maak er gratis een.
Software installeren
- Node.js 12 (LTS)en npm , wordt Node.js pakketbeheer geïnstalleerd op uw lokale computer.
- Visual Studio Code geïnstalleerd op uw lokale computer.
- Visual Studio Code-extensies:
- Azure App Service-extensie voor Visual Studio Code (geïnstalleerd vanuit Visual Studio Code).
- Azure-databases
- Azure-resources
Een databaseresource Cosmos DB MongoDB maken
Maak eerst een Cosmos-resource, omdat dit enkele minuten duurt.
Selecteer Visual Studio Code het pictogram Azure in het menu links en selecteer vervolgens de sectie Databases.
Als de sectie Databases niet zichtbaar is, controleert u of u de sectie in het bovenste menu van Azure ... hebt gecontroleerd.
Selecteer in de sectie Databases van Azure Explorer uw abonnement met de rechtermuisknop en selecteer vervolgens Server maken.
Selecteer in het opdrachtenpalet Nieuwe Azure Database Server maken de Azure Cosmos DB mongoDB-API.
Volg de aanwijzingen in de volgende tabel om te begrijpen hoe uw waarden worden gebruikt. Het maken van de database kan tot 15 minuten duren.
Eigenschap Waarde Voer een wereldwijd unieke accountnaam in voor de nieuwe resource. Voer een waarde in, zoals cosmos-mongodb-YOUR-NAME, voor uw resource. VervangYOUR-NAMEdoor uw naam of unieke id. Deze unieke naam wordt ook gebruikt als onderdeel van de URL voor toegang tot de resource in een browser.Selecteer of maak een resourcegroep. Maak een nieuwe resourcegroep met de naam js-demo-mongodb-web-app-resource-group-YOUR-NAME-HERE.Locatie De locatie van de resource. Voor deze zelfstudie selecteert u een regionale locatie bij u in de buurt. Het maken van de resource kan tot 15 minuten duren. U kunt de volgende sectie overslaan als u tijdsbeperking hebt, maar vergeet niet om terug te gaan om deze volgende sectie over enkele minuten te voltooien.
De Cosmos DB connection string
Klik in de verkenner van Azure Databases met de rechtermuisknop op de resourcenaam en selecteer Verbindingsreeks kopiëren om de verbindingsreeks te connection string. U hebt deze later in de zelfstudie nodig voor uw omgevingsvariabelebestand.
De voorbeeld-app Express.js klonen
De Express.js web-app wordt voor u geleverd. Kloon de app met git, installeer de afhankelijkheden en voer de app uit.
Kloon de voorbeeld-repo, installeer de afhankelijkheden en open het project in Visual Studio Code.
git clone https://github.com/Azure-Samples/js-e2e-express-mongo.git && \ cd js-e2e-express-mongo && \ npm install && \ code .Bewerk het omgevingsbestand, , en voeg connection string eigenschap voor uw Cosmos DB toe als de
.envDATABASE_URLwaarde van de eigenschap.DATABASE_URL=ADD-YOUR-CONNECTION-STRING_HEREOpen Visual Studio Code een terminalvenster en voer de volgende opdrachten uit om de afhankelijkheden van het voorbeeld te installeren en de web-app te starten.
npm startBekijk de web-app op uw lokale computer in een browser.
http://localhost:8080/
Een web-app-resource maken en een Express.js implementeren
Gebruik de Visual Studio Code-extensie voor App Service om een App Service-resource te maken en de Express.js web-app in de resource te implementeren.
Navigeer naar Azure Explorer. Klik met de rechtermuisknop op het abonnement en selecteer
Create new web app...(Advanced).
Volg de aanwijzingen in de volgende tabel om te begrijpen hoe uw waarden worden gebruikt.
Eigenschap Waarde Voer een wereldwijd unieke naam in voor de nieuwe web-app. Voer een waarde in, zoals web-app-with-mongodb-YOUR-NAME, voor uw App Service-resource. Vervang<YOUR-NAME>door uw naam of unieke id. Deze unieke naam wordt ook gebruikt als onderdeel van de URL voor toegang tot de resource in een browser.Selecteer een resourcegroep voor nieuwe resources. Selecteer de resourcegroep die u hebt gemaakt voor Cosmos DB resource, js-demo-mongodb-web-app-resource-group-YOUR-NAME-HERE, en vervang door uw naam ofYOUR-NAME-HEREe-mailalias.Selecteer een runtime voor de Linux-app. Selecteer Node 12 LTS.Selecteer een besturingssysteem. Selecteer Linux. Maak een Linux App Service-abonnement. Maak een nieuw serviceplan met de js-demo-mongodb-web-app-plan-YOUR-NAME-HEREnaam en vervang door uw naam ofYOUR-NAME-HEREe-mailalias.Een prijscategorie selecteren Gratis Selecteer een Application Insights resource. Sla dit nu over. Selecteer een locatie voor nieuwe resources. Selecteer dezelfde locatie die u hebt geselecteerd bij het maken van Cosmos DB resource en resourcegroep. Wanneer het proces voor het maken van de app is voltooid, wordt er een statusbericht weergegeven in de rechteronderhoek van Visual Studio Code met een keuze van
DeployofView output. SelecteerDeploy.
Als het statusbericht niet meer zichtbaar is, kunt u implementeren door Azure Explorer te selecteren, met de rechtermuisknop op de resourcenaam te klikken en vervolgens Implementeren naar web-app... te selecteren.
Tijdens het implementatieproces kunt u met een melding selecteren om het uitvoervenster weer te geven. Hiermee wordt de rolling status van de implementatie weergegeven.
Wanneer de implementatie is voltooid, wordt er een melding weergegeven. Selecteer Stream-logboeken om de rolling logboeken te bekijken.
Een App Service configureren voor database connection string
De omgevingsvariabele, DATABASE_URL , die lokaal is opgeslagen in uw , bestand is niet geïmplementeerd in uw .env web-app. Dit komt doordat het wordt vermeld als een genegeerd bestand in het ./.vscode/settings.json bestand:
{
"appService.zipIgnorePattern": [
"node_modules{,/**}",
".vscode{,/**}",
".env",
"test{,/**}"
],
"appService.deploySubpath": ".",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
}
}
Selecteer het Azure-pictogram in de activiteitenbalk en selecteer vervolgens uw web-app onder App Service en abonnement.
Klik met de rechtermuisknop op Instellingenselecteer vervolgens Nieuwe instelling toevoegen.
Voeg dezelfde naam en waarde toe aan uw
.envbestand.Naam van de instelling Waarde DATABASE_URL mongodb://... Klik met de rechtermuisknop op uw Azure-web-app en selecteer Opnieuw opstarten
Uw Azure-web-app weergeven in een browser
- Open de website in een browser en vervang de tekst
YOUR-RESOURCE_NAMEdoor uw eigen resourcenaam:https://YOUR-RESOURCE_NAME.azurewebsites.net. - Gebruik de web-app om items toe te voegen en te verwijderen.
Wijzigingen maken en opnieuw implementeren
Maak enkele wijzigingen enployer de app opnieuw met behulp van de App Service-extensie.
Resources opschonen
Nadat u deze zelfstudie hebt voltooid, verwijdert u de resources.
In Visual Studio Code gebruikt u azure explorer voor resourcegroepen, klikt u met de rechtermuisknop op de resourcegroep, zoals , vervangt u door uw naam of e-mailalias en selecteert u js-demo-mongodb-web-app-resource-group-YOUR-NAME-HEREYOUR-NAME-HERE vervolgens js-demo-mongodb-web-app-resource-group-YOUR-NAME-HERE
Meer informatie
Azure App Service extensie
Volgende stappen
Meer informatie over de App Service en Cosmos DB: