Wdrażanie statycznej aplikacji internetowej przy użyciu interfejsu wiersza polecenia usługi Azure Static Web Apps
Interfejs wiersza polecenia usługi Azure Static Web Apps (SWA CLI) zawiera deploy
polecenie w celu wdrożenia bieżącego projektu w usłudze Azure Static Web Apps.
Typowe scenariusze wdrażania obejmują:
- Aplikacja frontonu bez interfejsu API
- Aplikacja frontonu z interfejsem API
- Aplikacje platformy Blazor
Token wdrożenia
Interfejs wiersza polecenia swa obsługuje wdrażanie przy użyciu tokenu wdrożenia w celu włączenia konfiguracji w środowiskach ciągłej integracji/ciągłego wdrażania.
Token wdrożenia można uzyskać z:
Witryna Azure Portal: → statycznej aplikacji internetowej → wystąpienia → — omówienie → Zarządzanie tokenem wdrożenia
Interfejs wiersza polecenia platformy
secrets list
Azure: za pomocą polecenia:az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
Interfejs wiersza polecenia usługi Azure Static Web Apps: za pomocą
deploy
polecenia:swa deploy --print-token
Następnie możesz użyć wartości tokenu z wartością --deployment-token <TOKEN>
lub możesz utworzyć zmienną środowiskową o nazwie SWA_CLI_DEPLOYMENT_TOKEN
i ustawić ją na token wdrożenia.
Ważne
Nie przechowuj tokenów wdrażania w repozytorium publicznym.
Wdrażanie aplikacji frontonu bez interfejsu API
Aplikację frontonu można wdrożyć bez interfejsu API w usłudze Azure Static Web Apps. Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom swa build
lub zapoznaj się z instrukcjami kompilacji aplikacji.
Wybierz opcję, która najlepiej odpowiada twoim potrzebom w celu skonfigurowania wdrożenia
Opcja 1. W folderze kompilacji, który chcesz wdrożyć, uruchom polecenie deploy:
cd build/ swa deploy
Uwaga
Folder kompilacji musi zawierać zawartość statyczną aplikacji, która ma zostać wdrożona.
Opcja 2. Można również wdrożyć określony folder:
Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom
swa build
lub zapoznaj się z instrukcjami kompilacji aplikacji.Wdróż aplikację:
swa deploy ./my-dist
Wdrażanie aplikacji frontonu za pomocą interfejsu API
Wykonaj poniższe kroki, aby wdrożyć aplikację z punktami końcowymi interfejsu API.
Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom
swa build
lub zapoznaj się z instrukcjami kompilacji aplikacji.Upewnij się, że wersja środowiska uruchomieniowego języka interfejsu API w pliku staticwebapp.config.json jest poprawnie ustawiona, na przykład:
{ "platform": { "apiRuntime": "node:16" } }
Uwaga
Jeśli projekt nie ma pliku staticwebapp.config.json , dodaj go w
outputLocation
folderze.Wdróż aplikację:
swa deploy ./my-dist --api-location ./api
Wdrażanie aplikacji Platformy Blazor
Aplikację Platformy Blazor można wdrożyć, wykonując następujące kroki.
Skompiluj aplikację Blazor w trybie wydania :
dotnet publish -c Release -o bin/publish
W katalogu głównym projektu uruchom polecenie deploy:
swa deploy ./bin/publish/wwwroot --api-location ./Api
Wdrażanie przy użyciu pliku konfiguracji
Uwaga
Ścieżka dla outputLocation
elementu musi być względna względem .appLocation
Jeśli używasz swa-cli.config.json
pliku konfiguracji w projekcie z pojedynczym wpisem konfiguracji, możesz wdrożyć aplikację, wykonując następujące kroki.
Przykład pojedynczego wpisu konfiguracji wygląda podobnie do poniższego fragmentu kodu.
{
"configurations": {
"my-app": {
"appLocation": "./",
"apiLocation": "api",
"outputLocation": "frontend",
"start": {
"outputLocation": "frontend"
},
"deploy": {
"outputLocation": "frontend"
}
}
}
}
Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom
swa build
lub zapoznaj się z instrukcjami kompilacji aplikacji.Wdróż aplikację.
swa deploy
Jeśli masz wiele wpisów konfiguracji, możesz podać identyfikator wpisu, aby określić, który z nich ma być używany:
swa deploy my-otherapp
Opcje
Poniżej przedstawiono opcje, których można użyć z usługą swa deploy
:
-a, --app-location <path>
: folder zawierający kod źródłowy aplikacji frontonu (wartość domyślna: ".
")-i, --api-location <path>
: folder zawierający kod źródłowy aplikacji interfejsu API-O, --output-location <path>
: folder zawierający wbudowane źródło aplikacji frontonu. Ścieżka jest względna (--app-location
wartość domyślna: ".
")-w, --swa-config-location <swaConfigLocation>
: katalog, w którym znajduje się plik staticwebapp.config.json-d, --deployment-token <secret>
: token tajny używany do uwierzytelniania w usłudze Static Web Apps-dr, --dry-run
: symulować proces wdrażania bez faktycznego uruchomienia go (ustawienie domyślne:false
)-pt, --print-token
: wydrukuj token wdrożenia (wartość domyślna:false
)--env [environment]
: typ środowiska wdrażania, w którym ma zostać wdrożony projekt (domyślnie: "preview
")-S, --subscription-id <subscriptionId>
: Identyfikator subskrypcji platformy Azure używany przez ten projekt (domyślnie:process.env.AZURE_SUBSCRIPTION_ID
)-R, --resource-group <resourceGroupName>
: Grupa zasobów platformy Azure używana przez ten projekt-T, --tenant-id <tenantId>
: Identyfikator dzierżawy platformy Azure (ustawienie domyślne:process.env.AZURE_TENANT_ID
)-C, --client-id <clientId>
: Identyfikator klienta platformy Azure-CS, --client-secret <clientSecret>
: Wpis tajny klienta platformy Azure-n, --app-name <appName>
: Nazwa aplikacji statycznej aplikacji internetowej platformy Azure-cc, --clear-credentials
: wyczyść utrwalone poświadczenia przed zalogowaniem (ustawienie domyślne:false
)-u, --use-keychain
: włącz przy użyciu natywnego łańcucha kluczy systemu operacyjnego dla poświadczeń trwałych (ustawienie domyślne:true
)-nu, --no-use-keychain
: wyłącz przy użyciu natywnego łańcucha kluczy systemu operacyjnego-h, --help
: wyświetla pomoc dla polecenia
Sposób użycia
Wdrażanie przy użyciu tokenu wdrożenia.
swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>
Wdrażanie przy użyciu tokenu wdrożenia ze zmiennych środowiskowych.
SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/
Wdrażanie przy użyciu swa-cli.config.json
pliku
swa deploy
swa deploy myconfig
Wydrukuj token wdrożenia.
swa deploy --print-token
Wdrażanie w określonym środowisku.
swa deploy --env production