Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Verweis auf Azure Static Web Apps CLI-Befehle.
Commands
| Command | Description | Type | Status |
|---|---|---|---|
| swa login | Melden Sie sich bei Azure an. | SWA Core | GA |
| swa init | Konfiguriert ein neues Azure Static Web Apps-Projekt. | SWA Core | GA |
| swa build | Erstellt die Anwendung. Wenn Sie über eine Node.js Anwendung verfügen, werden zuerst Abhängigkeiten installiert. | SWA Core | GA |
| swa start | Starten Sie den Azure Static Web Apps-Emulator aus einem Verzeichnis, oder binden Sie ihn an einen ausgeführten Entwicklungsserver. | SWA Core | GA |
| swa deploy | Stellen Sie das aktuelle Projekt in Azure Static Web Apps bereit. | SWA Core | GA |
| swa db | Generieren und bearbeiten Sie die Konfiguration der Static Web Apps-Datenbankverbindungen. | SWA Core | GA |
Global Parameters
| Parameter | Summary |
|---|---|
| --version, -v | Anzeigen der Versionsnummer. |
| --verbose, --V [level] | Aktivieren der ausführlichen Ausgabe. Zu den Ebenenwerten gehören silly, , info( log Standard) und silent. |
| --config, -c [Pfad] | Pfad zur Datei „swa-cli.config.json“. |
| --config-name, -cn | Von der CLI verwendete Konfiguration. |
| --print-config, -g | Ausgeben aller aufgelösten Optionen. Der Standardwert ist false. |
| --help, -h | Anzeigen kontextbezogener Hilfe. |
swa login
Melden Sie sich bei Azure an.
Authentifizieren Sie sich bei Azure, um ein Bereitstellungstoken für Azure Static Web Apps mithilfe des Befehls swa deploy abzurufen.
Syntax
swa login
[--subscription-id]
[--resource-group]
[--tenant-id]
[--client-id]
[--client-secret]
[--app-name]
[--clear-credentials]
[--use-keychain]
[--no-use-keychain]
Examples
Beispiel 1: Interaktive Anmeldung bei Azure
swa login
Parameters
--subscription-id, -S
Azure-Abonnement-ID, die von diesem Projekt verwendet wird. Der Standardwert lautet process.env.AZURE_SUBSCRIPTION_ID.
--resource-group, -R
Name der Ressourcengruppe Sie können die Standardgruppe mit az configure --defaults group=<name>konfigurieren.
--tenant-id, -T
Azure-Mandanten-ID. Der Standardwert lautet process.env.AZURE_TENANT_ID.
--client-id, -C
Azure-Client-ID.
--client-secret, -CS
Geheimer Azure-Clientschlüssel.
--app-name, -n
Azure Static Web Apps-App-Name
--clear-credentials -cc
Löschen Sie gespeicherte Anmeldeinformationen vor der Anmeldung. Der Standardwert lautet false.
--use-keychain, -u
Verwenden Sie die native Keychain für persistente Anmeldeinformationen. Der Standardwert lautet true.
--no-use-keychain, -nu
Deaktivieren Sie die Verwendung der nativen Keychain des Betriebssystems.
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, erkennt Ihre Projekteinstellungen und die verwendeten Frameworks. Nach Abschluss wird eine neue statische Web-App erstellt und eine swa-cli.config.json Datei 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"
}
}
}
Syntax
swa init
[--yes]
Examples
Beispiel 1: Interaktives Erstellen einer neuen Konfiguration.
swa init
Beispiel 2: Erstellen Einer neuen Konfiguration mit Standardwerten für alle Optionen.
swa init --yes
Beispiel 3: Initialisieren Sie das Projekt mithilfe der Konfiguration mit dem Namen "myApp" aus der swa-cli.config.json-Datei.
swa init --config-name myApp
Parameters
--yes, -y
Antwortet auf alle Eingabeaufforderungen mit „yes“ (Ja), wodurch der interaktive Modus deaktiviert wird. Der Standardwert ist false.
swa build
Erstellt die Anwendung. Wenn Sie über eine Node.js Anwendung verfügen, werden zuerst Abhängigkeiten installiert.
Häufige Anwendungsfälle sind: Installieren von Abhängigkeiten für die Front-End-App und api und Ausführen der Buildbefehle für beides, nur beim Erstellen des Front-End- oder API-Projekts, wenn der andere keinen Buildschritt hat.
Syntax
swa build
[--app-location]
[--api-location]
[--output-location]
[--app-build-command]
[--api-build-command]
[--auto]
Examples
Beispiel 1: Erstellen Sie die App, und installieren Sie optional Abhängigkeiten.
swa build
Beispiel 2: Erkennen, wie Sie Ihre App erstellen und Buildbefehle nach der Installation von Abhängigkeiten ausführen.
swa build --auto
Beispiel 3: Installieren von Abhängigkeiten für die Front-End-Anwendung.
swa build --app-location ./client
Beispiel 4: Verwenden Sie die in swa-cli.config.json genannte myApp Konfiguration, um Ihre Front-End-Anwendung zu erstellen.
swa build myApp
Parameters
--app-location, -a
Der Ordner, der den Quellcode der Front-End-Anwendung enthält. Der Standardwert ist ..
--api-location, -i
Der Ordner, der den Quellcode der API-Anwendung enthält.
--output-location, -O
Der Ordner, der den generierten Code der Front-End-Anwendung enthält. Dieser Pfad ist relativ zu --app-location. Der Standardwert ist ..
--app-build-command, -A
Erstellt die Front-End-Anwendung.
--api-build-command, -I
Erstellt die API-Anwendung.
--auto
Erkennt automatisch, wie Sie Ihre Front-End- und API-Anwendungen erstellen. Der Standardwert ist false.
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 startmit 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 | Command |
|---|---|---|
| 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 die 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-locationund dem URI des lokalen API-Servers im folgenden Format aus:
swa start ./my-dist --api-location http://localhost:7071
Database connections
Um die Anwendung mit einer Datenbankverbindung zu starten, verwenden Sie den --data-api-location Parameter, und zeigen Sie auf den Ordner, der die staticwebapp.database.config.json Datei enthält.
swa start ./src --data-api-location swa-db-connections
Syntax
swa start
Examples
Beispiel 1: Starten Sie die Anwendung mit Standardeinstellungen.
swa start
Beispiel 2: Starten Sie die Anwendung mit einem Front-End-Entwicklungsserver.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Beispiel 3: 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
Parameters
--app-location, -a <PATH>
Der Ordner, der den Quellcode der Front-End-Anwendung enthält. Der Standardwert ist ..
--api-location, -i <PATH>
Der Ordner, der den Quellcode der API-Anwendung enthält.
--output-location, -O <PATH>
Der Ordner, der den generierten Code der Front-End-Anwendung enthält. Der Pfad ist relativ zu --app-location. Der Standardwert ist ..
--data-api-location
Der Ordner, der die staticwebapp.database.config.json Datei enthält.
--app-devserver-url, -D <URL>
Stellen Sie unter dieser URL eine Verbindung mit dem App-Entwicklungsserver her, anstatt den Ausgabespeicherort zu verwenden.
--api-devserver-url, -is <URL>
Stellen Sie unter dieser URL eine Verbindung mit dem API-Server her, anstatt den Ausgabespeicherort zu verwenden.
--api-port, -j <API_PORT>
Der an func start übergebene API-Serverport. Der Standardwert ist 7071.
--host, -q <HOST>
Die Hostadresse, die für den CLI-Entwicklungsserver verwendet wird. Der Standardwert ist localhost.
--port, -p <PORT>
Der Portwert, der für den CLI-Entwicklungsserver verwendet wird. Standard-4280.
--ssl, -s
Stellen Sie die Front-End-Anwendung und die API über HTTPS bereit. Der Standardwert ist false.
--ssl-cert, -e <SSL_CERT_LOCATION>
Das SSL-Zertifikat (CRT), das beim Aktivieren von HTTPS verwendet wird.
--ssl-key, -k <SSL_KEY_LOCATION>
Der SSL-Schlüssel (.key), der beim Aktivieren von HTTPS verwendet wird.
--run, -r <STARTUP_SCRIPT>
Speicherort eines benutzerdefinierten Shellbefehls oder einer Skriptdatei, der bzw. die beim Start ausgeführt werden soll.
--devserver-timeout, -t <TIME>
Die Wartezeit (in Sekunden) beim Herstellen einer Verbindung mit dem Entwicklungsserver einer Front-End-Anwendung oder einem API-Server. Der Standardwert ist 60.
--swa-config-location, -w <SWA_CONFIG_FILE_LOCATION>
Verzeichnisspeicherort der Datei staticwebapp.config.json.
--open, -o
Öffnen Sie den Entwicklungsserver im Browser. Der Standardwert ist "false".
--func-args, -f <FUNCTION_ARGUMENTS>
Übergeben Sie zusätzliche Argumente an den Befehl func start.
swa deploy
Stellen Sie das aktuelle Projekt in Azure Static Web Apps bereit.
Zu den gängigen Anwendungsfällen gehören:
Bereitstellen einer Front-End-App ohne API
Bereitstellen einer Front-End-App mit API
Bereitstellen einer Blazor-App
Deployment token
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:
Das Azure-Portal: Home → Static Web App → Ihre Instanz → Übersicht → Verwalten des Bereitstellungstokens
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 namens SWA_CLI_DEPLOYMENT_TOKEN erstellen und auf das Bereitstellungstoken festlegen.
Important
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 buildaus, oder verweisen Sie auf die Anwendungsbuildanweisungen.
Option 1: Führen Sie im Buildordner, den Sie bereitstellen möchten, den Befehl "Bereitstellen" aus:
cd build/
swa deploy
Note
Der build Ordner 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 buildaus, 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 buildaus, oder verweisen Sie auf die Anwendungsbuildanweisungen.Stellen Sie sicher, dass die Version der API-Sprachlaufzeit in der Datei
staticwebapp.config.jsonordnungsgemäß festgelegt ist, z. B.:
{
"platform": {
"apiRuntime": "node:16"
}
}
Note
Wenn Ihr Projekt über keine staticwebapp.config.json Datei verfügt, fügen Sie eine unter Ihrem outputLocation Ordner 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
Note
Der Pfad für outputLocation muss relativ zu appLocation sein.
Wenn Sie die Konfigurationsdatei swa-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 buildaus, 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
Syntax
swa deploy
[--yes]
Examples
Beispiel 1: Bereitstellen mithilfe eines Bereitstellungstokens.
swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>
Beispiel 2: Bereitstellen mithilfe eines Bereitstellungstokens aus den Umgebungsvariablen
SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/
Beispiel 3: Bereitstellen mit swa-cli.config.json Datei
swa deploy
swa deploy myconfig
Beispiel 4: Drucken des Bereitstellungstokens
swa deploy --print-token
Beispiel 5: Bereitstellen in einer bestimmten Umgebung
swa deploy --env production
swa db
Generieren und bearbeiten Sie die Konfiguration der Static Web Apps-Datenbankverbindungen.
Wird verwendet swa db init , um einen Beispielordner für swa-db-connections zusammen mit einer staticwebapp.database.config.json Konfigurationsdatei zu generieren. Wenn Sie eine Cosmos DB für NoSQL-Datenbank verwenden, generiert dies auch eine Beispielschemadatei staticwebapp.database.schema.gql .
Syntax
swa db init --database-type <DATABASE_TYPE>
Examples
Beispiel 1: Generieren eines Konfigurationsordners für eine Beispieldatenbankverbindung für eine Azure SQL-Datenbank.
swa db init --database-type mssql
Parameters
--database-type, -t <DATABASE_TYPE>
(Erforderlich) Der Typ der Datenbank, mit der Sie eine Verbindung herstellen möchten (mssql, postgresql, cosmosdb_nosql, mysql).
--folder-name, -f <FOLDER_NAME>
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.
---connection-string, -cs <CONNECTION_STRING>
Die Verbindungszeichenfolge der Datenbank, mit der Sie eine Verbindung herstellen möchten.
--cosmosdb_nosql-database, -nd <COSMOSDB_NOSQL_DATABASE>
Die Datenbank Ihres Cosmos DB-Kontos, das Sie verbinden möchten (nur erforderlich, wenn Sie den Datenbanktyp verwenden cosmosdb_nosql ).
--cosmosdb_nosql-container, -nc <COSMOSDB_NOSQL_CONTAINER>
Der Container Ihres Cosmos DB-Kontos, das Sie verbinden möchten.
--help, -h
Anzeigen der Hilfe für einen Befehl.