Einfache Web-App hosten? App Service erstellen

Veröffentlicht am:

CloudTrips möchte eine einfache Webanwendung veröffentlichen, ohne eine VM zu erstellen oder zu verwalten. Azure App Service verwaltet Betriebssystem, Webserver, Laufzeitumgebung, Patches und Anwendungsendpunkt, während du den Code bereitstellst.

Ein App Service plan stellt Rechenressourcen und Tarif bereit. Eine Web App enthält Anwendungseinstellungen, Bereitstellungen und Hostname. Mehrere kompatible Web-Apps können einen Plan und dessen Ressourcen gemeinsam nutzen.

Erstelle die Web-App

Suche nach App Services, wähle Create > Web App und trage ein:

Subscription: CloudTrips TEST
Resource group: rg-cloudtrips-appservice-test-weu
Name: app-cloudtrips-web-dmytro-test-weu
Publish: Code
Runtime stack: Node 24 LTS
Operating System: Linux
Region: West Europe
Linux Plan: Create new
Plan name: asp-cloudtrips-web-test-weu
Pricing plan: Free F1
Zone redundancy: Disabled

Der App-Name muss global eindeutig sein, weil er Teil des öffentlichen Hostnamens wird. Ist der vorgeschlagene Name nicht verfügbar, ergänze ein kurzes eindeutiges Suffix und verwende denselben Namen in allen folgenden Befehlen.

Wähle Review + create > Create und öffne anschließend die Ressource.

Create Web App auf der Registerkarte Basics mit Node 24 LTS, Linux und dem App-Service-Tarif Free F1

Verstehe die Standardseite

Wähle unter Overview die Default domain. Die anfängliche App-Service-Seite bestätigt, dass Plattform und öffentlicher HTTPS-Endpunkt funktionieren. Dein Anwendungscode wurde jedoch noch nicht bereitgestellt.

Der Tarif Free F1 eignet sich für dieses Labor, nicht für Produktion: Er nutzt gemeinsame Rechenleistung, hat Kontingente, kann nicht horizontal skalieren und bietet keine Verfügbarkeits-SLA.

App-Service-Übersicht mit laufender Web-App und ihrer standardmäßigen azurewebsites.net-Domäne

Erstelle und veröffentliche eine kleine Node.js-App

Erstelle auf deinem Mac einen lokalen Anwendungsordner:

mkdir -p cloudtrips-appservice
cd cloudtrips-appservice

Erstelle package.json:

{
  "name": "cloudtrips-appservice",
  "version": "1.0.0",
  "scripts": {
    "start": "node server.js"
  }
}

Erstelle server.js:

const http = require('http');

const port = process.env.PORT || 8080;

http.createServer((request, response) => {
  response.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
  response.end(`
    <h1>CloudTrips App Service</h1>
    <p>Hosted without managing a virtual machine.</p>
  `);
}).listen(port);

App Service stellt die Umgebungsvariable PORT bereit. Die Anwendung muss auf diesem Port lauschen, damit die Plattform eingehende Anfragen an sie weiterleiten kann.

Packe die Dateien in das Stammverzeichnis des ZIP-Archivs und stelle sie bereit:

zip cloudtrips-web.zip package.json server.js

az webapp deploy \
  --resource-group rg-cloudtrips-appservice-test-weu \
  --name app-cloudtrips-web-dmytro-test-weu \
  --src-path cloudtrips-web.zip \
  --type zip

Die ZIP-Bereitstellung entpackt die Dateien in das Inhaltsverzeichnis der App und startet die App neu. Anschließend führt App Service das Skript npm start aus.

Prüfe die App

Rufe den Hostnamen ab und teste ihn:

APP_HOST=$(az webapp show \
  --resource-group rg-cloudtrips-appservice-test-weu \
  --name app-cloudtrips-web-dmytro-test-weu \
  --query defaultHostName \
  --output tsv)

curl --fail "https://${APP_HOST}"

Die erwartete Ausgabe enthält:

CloudTrips App Service
Hosted without managing a virtual machine.

Aktualisiere die Default domain im Browser, um dieselbe Seite zu sehen.

Browser mit der bereitgestellten CloudTrips-App-Service-Seite unter der öffentlichen Standarddomäne

Fahre mit der Skalierung fort

Behalte rg-cloudtrips-appservice-test-weu. Der nächste Trip verwendet dieselbe Web-App und denselben App Service Plan für Scale-up und Scale-out und entfernt danach alle Ressourcen.