swa
Befehle
Name | Beschreibung | Typ | Status |
---|---|---|---|
swa login |
Anmelden an Azure |
SWA Core | Allgemein verfügbar |
swa build |
Erstellt die Anwendung. Wenn Sie über eine Node.js-Anwendung verfügen, werden zuerst Abhängigkeiten installiert. |
SWA Core | Allgemein verfügbar |
swa start |
Starten Sie den Azure Static Web Apps-Emulator aus einem Verzeichnis, oder binden Sie ihn an einen ausgeführten Entwicklungsserver. |
SWA Core | Allgemein verfügbar |
swa deploy |
Stellen Sie das aktuelle Projekt in Azure Static Web Apps bereit. |
SWA Core | Allgemein verfügbar |
swa db |
Generieren und bearbeiten Sie die Konfiguration der Static Web Apps-Datenbankverbindungen. |
SWA Core | Allgemein verfügbar |
swa login
Anmelden an Azure
Authentifizieren Sie sich bei Azure, um ein Bereitstellungstoken für Azure Static Web Apps mithilfe des Befehls swa deploy
abzurufen.
swa login
[--subscription-id]
[--resource-group]
[--tenant-id]
[--client-id]
[--client-secret]
[--app-name]
[--clear-credentials]
[--use-keychain]
[--no-use-keychain]
Beispiele
Interaktive Anmeldung bei Azure
swa login
Optionale Parameter
Azure-Abonnement-ID, die von diesem Projekt verwendet wird. Der Standardwert ist process.env.AZURE_SUBSCRIPTION_ID
.
Name der Ressourcengruppe Sie können die Standardgruppe mit az configure --defaults group=<name>
konfigurieren.
Azure-Mandanten-ID. Der Standardwert ist process.env.AZURE_TENANT_ID
.
Azure-Client-ID.
Geheimer Azure-Clientschlüssel.
Azure Static Web Apps-App-Name
Löschen Sie gespeicherte Anmeldeinformationen vor der Anmeldung. Der Standardwert ist false
.
Verwenden Sie die native Keychain für persistente Anmeldeinformationen. Der Standardwert ist true
.
Deaktivieren Sie die Verwendung der nativen Keychain des Betriebssystems.
Globale Parameter
Anzeigen der Versionsnummer.
Aktivieren der ausführlichen Ausgabe. Ebenenwerte sind silly
, info
, log
(Standard) und silent
.
Pfad zur Datei „swa-cli.config.json“.
Von der CLI verwendete Konfiguration.
Ausgeben aller aufgelösten Optionen. Der Standardwert ist false
.
Anzeigen kontextbezogener Hilfe.
swa init
Konfiguriert ein neues Azure Static Web Apps-Projekt.
Konfiguriert ein neues Azure Static Web Apps-Projekt mit der Static Web Apps-Befehlszeilenschnittstelle. Der interaktive Modus fordert Sie zur Eingabe eines Konfigurationsnamens auf und erkennt Ihre Projekteinstellungen und die verwendeten Frameworks. Nach Abschluss wird eine neue statische Web-App erstellt und eine Datei vom Typ „swa-cli.config.json“ im aktuellen Verzeichnis generiert.
Sie können swa init
mehrmals ausführen, um unterschiedliche Konfigurationen für Ihr Projekt zu erstellen. Dies wird ggf. empfohlen, wenn Sie an einem Monorepo arbeiten und verschiedene Projekte konfigurieren möchten.
Die generierte Konfigurationsdatei wird in jedem Befehl verwendet, den Sie mit der Static Web Apps-Befehlszeilenschnittstelle ausführen. Wenn Sie über mehrere benannte Konfigurationen verfügen, können Sie das positionelle Argument oder die Option --config-name
verwenden, um anzugeben, welche Konfiguration Sie verwenden möchten.
Das folgende Beispiel stellt eine vom Befehl init
generierte Konfiguration dar:
"$schema": "https://aka.ms/azure/static-web-apps-cli/schema",
"configurations": {
"myApp": {
"appLocation": ".",
"apiLocation": "api",
"outputLocation": "dist",
"appBuildCommand": "npm run build",
"apiBuildCommand": "npm run build --if-present",
"run": "npm run dev",
"appDevserverUrl": "http://localhost:8080"
}
}
} ```
swa init
[--yes]
Beispiele
Erstellen Sie interaktiv eine neue Konfiguration.
swa init
Erstellen Sie eine neue Konfiguration mit Standardwerten für alle Optionen.
swa init --yes
Initialisieren Sie das Projekt mithilfe der Konfiguration mit dem Namen „myApp“ aus der Datei „swa-cli.config.json“.
swa init --config-name myApp
Optionale Parameter
Antwortet auf alle Eingabeaufforderungen mit „yes“ (Ja), wodurch der interaktive Modus deaktiviert wird. Der Standardwert ist false
.
Globale Parameter
Anzeigen der Versionsnummer.
Aktivieren der ausführlichen Ausgabe. Ebenenwerte sind silly
, info
, log
(Standard) und silent
.
Pfad zur Datei „swa-cli.config.json“.
Von der CLI verwendete Konfiguration.
Ausgeben aller aufgelösten Optionen. Der Standardwert ist false
.
Anzeigen kontextbezogener Hilfe.
swa start
Starten Sie den Azure Static Web Apps-Emulator aus einem Verzeichnis, oder binden Sie ihn an einen ausgeführten Entwicklungsserver.
Bereitstellen über einen Ordner
Die CLI wird standardmäßig gestartet und stellt statische Inhalte aus dem aktuellen Arbeitsverzeichnis ./
bereit:
swa start
Wenn sich der Artefaktordner Ihrer statischen App unter einem anderen Ordner (z. B. ./my-dist
) befindet, führen Sie die CLI aus, und geben Sie diesen Ordner an:
swa start ./my-dist
Bereitstellen über einen Entwicklungsserver
Bei der lokalen Entwicklung Ihrer Front-End-App ist es häufig hilfreich, den Entwicklungsserver zu verwenden, der im Rahmen der CLI Ihres Front-End-Frameworks bereitgestellt wird. Mit der Framework-Befehlszeilenschnittstelle können Sie integrierte Features wie „livereload“ und HMR (Hot Module Replacement) verwenden. Führen Sie die folgenden beiden Schritte aus, um die SWA-Befehlszeilenschnittstelle mit Ihrem lokalen Entwicklungsserver zu verwenden:
- Starten Sie den lokalen Entwicklungsserver wie gewohnt. Verwenden Sie bei Verwendung von Angular beispielsweise
ng serve
(odernpm start
). - Führen Sie in einem separaten Terminal
swa start
mit dem vom Entwicklungsserver bereitgestellten URI im folgenden Format aus:
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Hier ist eine Liste der Standardports und Befehle, die von einigen beliebten Entwicklungsservern verwendet werden:
Tool | Port | Get-Help |
---|---|---|
Angular | 4200 |
swa start http://localhost:4200 |
Blazor WebAssembly | 5000 |
swa start http://localhost:5000 |
Gatsby | 8000 |
swa start http://localhost:8000 |
Hugo | 1313 |
swa start http://localhost:1313 |
Next.js | 3000 |
swa start http://localhost:3000 |
React (Erstellen einer React-App) | 3000 |
swa start http://localhost:3000 |
Svelte (sirv-cli) | 5000 |
swa start http://localhost:5000 |
Vue | 3000 |
swa start http://localhost:3000 |
Anstatt einen Entwicklungsserver separat zu starten, können Sie den Startbefehl für die CLI angeben.
# npm start script (React)
swa start http://localhost:3000 --run "npm start"
# dotnet watch (Blazor)
swa start http://localhost:5000 --run "dotnet watch run"
# Jekyll
swa start http://localhost:4000 --run "jekyll serve"
# custom script
swa start http://localhost:4200 --run "./startup.sh"
Greifen Sie dann über http://localhost:4280
auf die Anwendung mit den emulierten Diensten zu.
Bereitstellen der Front-End-App und der API
Wenn Ihr Projekt API-Funktionen enthält, überprüft die CLI, ob Azure Functions Core Tools installiert und verfügbar sind. Andernfalls lädt die CLI die richtige Version der Azure Functions Core Tools herunter und installiert sie.
Automatisches Starten des API-Servers
Führen Sie die CLI aus, und geben Sie den Ordner an, der das API-Back-End enthält (ein gültiges Azure Functions-App-Projekt):
# static content plus an API
swa start ./my-dist --api-location ./api
# front-end dev server plus an API
swa start http://localhost:3000 --api-location ./api
Manuelles Starten des API-Servers
Wenn Sie Ihr Back-End lokal entwickeln, ist es manchmal hilfreich, Azure Functions Core Tools separat auszuführen, um Ihre API bereitzustellen. Auf diese Weise können Sie integrierte Features wie Debuggen und Unterstützung für einen umfangreichen Editor verwenden. Führen Sie die folgenden beiden Schritte aus, um die Befehlszeilenschnittstelle mit Ihrem lokalen Entwicklungsserver für das API-Back-End zu verwenden:
- Starten Sie Ihre API mithilfe von Azure Functions Core Tools (
func host start
), oder starten Sie das Debuggen in VS Code. - Führen Sie in einem separaten Terminal die SWA-Befehlszeilenschnittstelle mit dem Flag
--api-location
und dem URI des lokalen API-Servers im folgenden Format aus:
swa start ./my-dist --api-location http://localhost:7071
Datenbankverbindungen
Um die Anwendung mit einer Datenbankverbindung zu starten, verwenden Sie den Parameter --data-api-location
, und verweisen Sie auf den Ordner, der die Datei staticwebapp.database.config.json enthält.
swa start ./src --data-api-location swa-db-connections
Beispiele
Starten Sie die Anwendung mit Standardeinstellungen:
swa start
Starten Sie die Anwendung mit einem Front-End-Entwicklungsserver:
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Starten Sie die Anwendung mit einem Front-End- und Back-End-Entwicklungsserver:
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT> --api-location http://localhost:7071
Optionale Parameter
Der Ordner, der den Quellcode der Front-End-Anwendung enthält. Der Standardwert ist .
.
Der Ordner, der den Quellcode der API-Anwendung enthält.
Der Ordner, der den generierten Code der Front-End-Anwendung enthält. Der Pfad ist relativ zu --app-location
. Der Standardwert ist .
.
Der Ordner, der die Datei staticwebapp.database.config.json enthält.
Stellen Sie unter dieser URL eine Verbindung mit dem App-Entwicklungsserver her, anstatt den Ausgabespeicherort zu verwenden.
Stellen Sie unter dieser URL eine Verbindung mit dem API-Server her, anstatt den Ausgabespeicherort zu verwenden.
Der an func start
übergebene API-Serverport. Der Standardwert ist 7071.
Die Hostadresse, die für den CLI-Entwicklungsserver verwendet wird. Der Standardwert ist localhost
.
Der Portwert, der für den CLI-Entwicklungsserver verwendet wird. Standardwert: 4280
.
Stellen Sie die Front-End-Anwendung und die API über HTTPS bereit. Der Standardwert ist false
.
Das SSL-Zertifikat (CRT), das beim Aktivieren von HTTPS verwendet wird.
Der SSL-Schlüssel (.key), der beim Aktivieren von HTTPS verwendet wird.
Speicherort eines benutzerdefinierten Shellbefehls oder einer Skriptdatei, der bzw. die beim Start ausgeführt werden soll.
Die Wartezeit (in Sekunden) beim Herstellen einer Verbindung mit dem Entwicklungsserver einer Front-End-Anwendung oder einem API-Server. Der Standardwert ist 60.
Verzeichnisspeicherort der Datei staticwebapp.config.json
.
Öffnen Sie den Entwicklungsserver im Browser. Standardwert ist „falsch“.
Übergeben Sie zusätzliche Argumente an den Befehl func start
.
Globale Parameter
Anzeigen der Versionsnummer.
Aktivieren der ausführlichen Ausgabe. Ebenenwerte sind silly
, info
, log
(Standard) und silent
.
Pfad zur Datei „swa-cli.config.json“.
Von der CLI verwendete Konfiguration.
Ausgeben aller aufgelösten Optionen. Der Standardwert ist false
.
Anzeigen kontextbezogener Hilfe.
swa build
Erstellt die Anwendung. Wenn Sie über eine Node.js-Anwendung verfügen, werden zuerst Abhängigkeiten installiert.
Häufige Anwendungsfälle: Installieren von Abhängigkeiten für die Front-End-App und API und Ausführen der Buildbefehle für beide, reine Erstellung des Front-End- oder API-Projekts, wenn das andere keinen Buildschritt umfasst.
swa build
[--app-location]
[--api-location]
[--output-location]
[--app-build-command]
[--api-build-command]
[--auto]
Beispiele
Erstellen Sie die App, und installieren Sie optional Abhängigkeiten:
swa build
Ermitteln Sie, wie Sie Ihre App erstellen, und führen Sie Buildbefehle nach der Installation von Abhängigkeiten aus:
swa build --auto
Installieren Sie Abhängigkeiten für die Front-End-Anwendung.
swa build --app-location ./client
Verwenden Sie die Konfiguration mit dem Namen „myApp“ in *swa-cli.config.json* zum Erstellen Ihrer Front-End-Anwendung:
swa build myApp
Optionale Parameter
Der Ordner, der den Quellcode der Front-End-Anwendung enthält. Der Standardwert ist .
.
Der Ordner, der den Quellcode der API-Anwendung enthält.
Der Ordner, der den generierten Code der Front-End-Anwendung enthält. Dieser Pfad ist relativ zu --app-location
. Der Standardwert ist .
.
Erstellt die Front-End-Anwendung.
Erstellt die API-Anwendung.
Erkennt automatisch, wie Sie Ihre Front-End- und API-Anwendungen erstellen. Der Standardwert ist false
.
Globale Parameter
Anzeigen der Versionsnummer.
Aktivieren der ausführlichen Ausgabe. Ebenenwerte sind silly
, info
, log
(Standard) und silent
.
Pfad zur Datei „swa-cli.config.json“.
Von der CLI verwendete Konfiguration.
Ausgeben aller aufgelösten Optionen. Der Standardwert ist false
.
Anzeigen kontextbezogener Hilfe.
swa deploy
Stellen Sie das aktuelle Projekt in Azure Static Web Apps bereit.
Gängige Anwendungsfälle:
- Bereitstellen einer Front-End-App ohne API
- Bereitstellen einer Front-End-App mit API
- Bereitstellen einer Blazor-App
Bereitstellungstoken
Die SWA-Befehlszeilenschnittstelle unterstützt die Bereitstellung mithilfe eines Bereitstellungstokens. Dies ist häufig bei der Bereitstellung über eine CI/CD-Umgebung hilfreich. Sie haben verschiedene Möglichkeiten, ein Bereitstellungstoken abzurufen:
Über das Azure-Portal: Start → Statische Web-App → Ihre Instanz → Übersicht → Bereitstellungstoken verwalten
Wenn Sie die Azure CLI verwenden, können Sie das Bereitstellungstoken Ihres Projekts mit dem folgenden Befehl abrufen:
az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
Wenn Sie die Azure Static Web Apps-Befehlszeilenschnittstelle verwenden, können Sie den folgenden Befehl verwenden:
swa deploy --print-token
Sie können diesen Wert dann mit
--deployment-token <TOKEN>
verwenden oder eine Umgebungsvariable namensSWA_CLI_DEPLOYMENT_TOKEN
erstellen und auf das Bereitstellungstoken festlegen.Wichtig: Speichern Sie das Bereitstellungstoken nicht in einem öffentlichen Repository. Dieser Wert muss geheim bleiben.
Bereitstellen einer Front-End-App ohne API
Sie können eine Front-End-Anwendung ohne API in Azure Static Web Apps bereitstellen, indem Sie die folgenden Schritte ausführen:
- Wenn Ihre Front-End-Anwendung einen Buildschritt erfordert, führen Sie
swa build
aus, oder verweisen Sie auf die Anwendungsbuildanweisungen.
Option 1: Führen Sie im Buildordner, den Sie bereitstellen möchten, den Bereitstellungsbefehl aus:
cd build/
swa deploy
Hinweis: Der Ordner
build
muss den statischen Inhalt Ihrer App enthalten, die Sie bereitstellen möchten. Option 2: Sie können auch einen bestimmten Ordner bereitstellen:
- Wenn Ihre Front-End-Anwendung einen Buildschritt erfordert, führen Sie
swa build
aus, oder verweisen Sie auf die Anwendungsbuildanweisungen. - Stellen Sie Ihre App bereit:
swa deploy ./my-dist
Bereitstellen einer Front-End-App mit API
Führen Sie die folgenden Schritte aus, um sowohl die Front-End-App als auch eine API für Azure Static Web Apps bereitzustellen:
- Wenn Ihre Front-End-Anwendung einen Buildschritt erfordert, führen Sie
swa build
aus, oder verweisen Sie auf die Anwendungsbuildanweisungen. - Stellen Sie sicher, dass die Version der API-Sprachlaufzeit in der Datei
staticwebapp.config.json
ordnungsgemäß festgelegt ist, z. B.:
{
"platform": {
"apiRuntime": "node:16"
}
}
Hinweis: Wenn Ihr Projekt nicht über eine Datei vom Typ
staticwebapp.config.json
verfügt, fügen Sie eine im OrdneroutputLocation
hinzu.
- Stellen Sie Ihre App bereit:
swa deploy ./my-dist --api-location ./api
Bereitstellen einer Blazor-App
Führen Sie die folgenden Schritte aus, um eine Blazor-App mit einer optionalen API in Azure Static Web Apps bereitzustellen:
- Erstellen Sie Ihre Blazor-App im Releasemodus:
dotnet publish -c Release -o bin/publish
- Führen Sie im Stamm Ihres Projekts den
deploy
-Befehl aus:
swa deploy ./bin/publish/wwwroot --api-location ./Api
Bereitstellen unter Verwendung von swa-cli.config.json
Hinweis: Der Pfad für
outputLocation
muss relativ zuappLocation
sein. Wenn Sie die Konfigurationsdateiswa-cli.config.json
in Ihrem Projekt verwenden und über einen einzelnen Konfigurationseintrag verfügen, verwenden Sie eine Konfiguration wie die folgende:
{
"configurations": {
"my-app": {
"appLocation": "./",
"apiLocation": "api",
"outputLocation": "frontend",
"start": {
"outputLocation": "frontend"
},
"deploy": {
"outputLocation": "frontend"
}
}
}
}
Anschließend können Sie Ihre Anwendung bereitstellen, indem Sie die folgenden Schritte ausführen:
- Wenn Ihre Front-End-Anwendung einen Buildschritt erfordert, führen Sie
swa build
aus, oder verweisen Sie auf die Anwendungsbuildanweisungen. - Stellen Sie Ihre App bereit:
swa deploy
Wenn Sie über mehrere Konfigurationseinträge verfügen, können Sie mithilfe der Eintrags-ID angeben, welcher verwendet werden soll:
swa deploy my-otherapp
swa deploy
[--yes]
Beispiele
Führen Sie die Bereitstellung mithilfe eines Bereitstellungstokens aus:
swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>
Führen Sie die Bereitstellung mithilfe eines Bereitstellungstokens aus den Umgebungsvariablen aus:
SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/
Führen Sie die Bereitstellung mithilfe der Datei „swa-cli.config.json“ aus:
swa deploy swa deploy myconfig
Geben Sie das Bereitstellungstoken aus:
swa deploy --print-token
Führen Sie die Bereitstellung in einer bestimmten Umgebung aus:
swa deploy --env production
Globale Parameter
Anzeigen der Versionsnummer.
Aktivieren der ausführlichen Ausgabe. Ebenenwerte sind silly
, info
, log
(Standard) und silent
.
Pfad zur Datei „swa-cli.config.json“.
Von der CLI verwendete Konfiguration.
Ausgeben aller aufgelösten Optionen. Der Standardwert ist false
.
Anzeigen kontextbezogener Hilfe.
swa db
Generieren und bearbeiten Sie die Konfiguration der Static Web Apps-Datenbankverbindungen.
Verwenden Sie swa db init
, um den Beispielordner swa-db-connections zusammen mit einer Konfigurationsdatei vom Typ staticwebapp.database.config.json zu generieren. Wenn Sie eine Cosmos DB for NoSQL-Datenbank verwenden, generiert dies auch die Beispielschemadatei staticwebapp.database.schema.gql.
swa db init --database-type <DATABASE_TYPE>
Beispiele
Generieren Sie einen Beispielordner für die Datenbankverbindungskonfiguration für eine Azure SQL-Datenbank:
swa db init --database-type mssql
Optionale Parameter
(Erforderlich) Der Typ der Datenbank, mit der Sie eine Verbindung herstellen möchten (mssql, postgresql, cosmosdb_nosql, mysql).
Ein Ordnername zum Überschreiben des Konventionsnamen des Ordner für die Datenbankverbindungskonfiguraiton. (Stellen Sie sicher, dass Sie die CI/CD-Workflowdateien entsprechend aktualisieren.) Der Standardwert ist swa-db-connections
.
Die Verbindungszeichenfolge der Datenbank, mit der Sie eine Verbindung herstellen möchten.
Die Datenbank Ihres Cosmos DB-Kontos, mit dem Sie eine Verbindung herstellen möchten (nur erforderlich, wenn Sie den Datenbanktyp „cosmosdb_nosql“ verwenden).
Der Container Ihres cosmosdb-Kontos, mit dem Sie eine Verbindung herstellen möchten.
Anzeigen der Hilfe für einen Befehl.
Globale Parameter
Anzeigen der Versionsnummer.
Aktivieren der ausführlichen Ausgabe. Ebenenwerte sind silly
, info
, log
(Standard) und silent
.
Pfad zur Datei „swa-cli.config.json“.
Von der CLI verwendete Konfiguration.
Ausgeben aller aufgelösten Optionen. Der Standardwert ist false
.
Anzeigen kontextbezogener Hilfe.