Wdrażanie aplikacji internetowej w usłudze Azure Static Web Apps
W tym artykule utworzysz nową aplikację internetową z wybraną strukturą, uruchomisz ją lokalnie, a następnie wdrożysz w usłudze Azure Static Web Apps.
Wymagania wstępne
Do ukończenia tego samouczka niezbędne są następujące elementy:
Zasób | opis |
---|---|
Subskrypcja platformy Azure | Jeśli go nie masz, możesz bezpłatnie utworzyć konto. |
Node.js | Zainstaluj wersję 20.0 lub nowszą. |
Interfejs wiersza polecenia platformy Azure | Zainstaluj wersję 2.6x lub nowszą. |
Potrzebny jest również edytor tekstów. W przypadku pracy z platformą Azure zaleca się użycie programu Visual Studio Code .
Aplikację utworzoną w tym artykule możesz uruchomić na wybranej platformie, w tym: Linux, macOS, Windows lub Podsystem Windows dla systemu Linux.
Tworzenie aplikacji internetowej
- Otwórz okno terminalu.
Wybierz odpowiedni katalog dla kodu, a następnie uruchom następujące polecenia.
npm create vite@latest swa-vanilla-demo -- --template=vanilla cd swa-vanilla-demo npm install npm run dev
Podczas uruchamiania tych poleceń serwer deweloperów wyświetla adres URL witryny internetowej. Wybierz link, aby otworzyć go w domyślnej przeglądarce.
Wybierz odpowiedni katalog dla kodu, a następnie uruchom następujące polecenia.
npx --package @angular/cli@latest ng new swa-angular-demo --ssr=false --defaults cd swa-angular-demo npm start
Podczas uruchamiania tych poleceń serwer deweloperów wyświetla adres URL witryny internetowej. Wybierz link, aby otworzyć go w domyślnej przeglądarce.
Wybierz odpowiedni katalog dla kodu, a następnie uruchom następujące polecenia.
npm create vite@latest swa-react-demo -- --template react cd swa-react-demo npm install npm run dev
Podczas uruchamiania tych poleceń serwer deweloperów wyświetla adres URL witryny internetowej. Wybierz link, aby otworzyć go w domyślnej przeglądarce.
Wybierz odpowiedni katalog dla kodu, a następnie uruchom następujące polecenia.
npm create vite@latest swa-vue-demo -- --template vue cd swa-vue-demo npm install npm run dev
Podczas uruchamiania tych poleceń serwer deweloperów wyświetla adres URL witryny internetowej. Wybierz link, aby otworzyć go w domyślnej przeglądarce.
- Wybierz pozycję Cmd/Ctrl+C, aby zatrzymać serwer deweloperów.
Tworzenie statycznej aplikacji internetowej na platformie Azure
Statyczną aplikację internetową można utworzyć przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure, programu Azure PowerShell lub programu Visual Studio Code (z rozszerzeniem Azure Static Web Apps). W tym samouczku jest używany interfejs wiersza polecenia platformy Azure.
Zaloguj się do interfejsu wiersza polecenia platformy Azure:
az login
Domyślnie to polecenie otwiera przeglądarkę, aby ukończyć proces. Interfejs wiersza polecenia platformy Azure obsługuje różne metody logowania, jeśli ta metoda nie działa w danym środowisku.
Jeśli masz wiele subskrypcji, może być konieczne wybranie subskrypcji. Bieżącą subskrypcję można wyświetlić przy użyciu następującego polecenia:
az account show
Aby wybrać subskrypcję, możesz uruchomić
az account set
polecenie .az account set --subscription "<SUBSCRIPTION_NAME_OR_ID>"
Utwórz grupę zasobów.
Grupy zasobów służą do grupowania zasobów platformy Azure.
az group create -n swa-tutorial -l centralus --query "properties.provisioningState"
Parametr
-n
odwołuje się do nazwy witryny, a-l
parametr jest nazwą lokalizacji platformy Azure. Polecenie kończy się--query "properties.provisioningState"
z poleceniem , więc polecenie zwraca tylko komunikat o powodzeniu lub błędzie.Utwórz statyczną aplikację internetową w nowo utworzonej grupie zasobów.
az staticwebapp create -n swa-demo-site -g swa-tutorial --query "defaultHostname"
Parametr
-n
odwołuje się do nazwy witryny, a-g
parametr odwołuje się do nazwy grupy zasobów platformy Azure. Upewnij się, że w poprzednim kroku określono tę samą nazwę grupy zasobów. Statyczna aplikacja internetowa jest globalnie dystrybuowana, więc lokalizacja nie jest ważna dla sposobu wdrażania aplikacji.Polecenie jest skonfigurowane do zwracania adresu URL aplikacji internetowej. Możesz skopiować wartość z okna terminalu do przeglądarki, aby wyświetlić wdrożona aplikacja internetowa.
Konfigurowanie pod kątem wdrożenia
staticwebapp.config.json
Dodaj plik do kodu aplikacji z następującą zawartością:{ "navigationFallback": { "rewrite": "/index.html" } }
Zdefiniowanie trasy rezerwowej umożliwia lokacji serwer plików
index.html
dla wszystkich żądań wysyłanych do domeny.Sprawdź ten plik w systemie kontroli kodu źródłowego (takim jak git), jeśli używasz go.
Zainstaluj interfejs wiersza polecenia usługi Azure Static Web Apps (SWA) w projekcie.
npm install -D @azure/static-web-apps-cli
Interfejs wiersza polecenia swa ułatwia tworzenie i testowanie lokacji lokalnie przed wdrożeniem jej w chmurze.
Utwórz nowy plik dla projektu i nadaj mu
swa-cli.config.json
nazwę .W
swa-cli.config.json
pliku opisano sposób kompilowania i wdrażania witryny.Po utworzeniu tego pliku możesz wygenerować jego zawartość przy użyciu
npx swa init
polecenia .npx swa init --yes
Skompiluj aplikację do dystrybucji.
npx swa build
Zaloguj się do platformy Azure przy użyciu interfejsu wiersza polecenia swa.
npx swa login --resource-group swa-tutorial --app-name swa-demo-site
Użyj tej samej nazwy grupy zasobów i statycznej nazwy aplikacji internetowej utworzonej w poprzedniej sekcji. Podczas próby zalogowania zostanie otwarta przeglądarka, aby ukończyć proces w razie potrzeby.
Ostrzeżenie
Rozwiązanie Angular w wersji 17 lub nowszej umieszcza pliki dystrybucyjne w podkatalogu ścieżki wyjściowej, którą można wybrać. Interfejs wiersza polecenia swa nie zna określonej lokalizacji katalogu. W poniższych krokach pokazano, jak poprawnie ustawić tę ścieżkę.
Znajdź wygenerowany plik index.html w projekcie w folderze dist/swa-angular-demo/browser .
Ustaw zmienną
SWA_CLI_OUTPUT_LOCATION
środowiskową na katalog zawierający plik index.html :export SWA_CLI_OUTPUT_LOCATION="dist/swa-angular-demo/browser"
Wdrażanie witryny na platformie Azure
Wdróż kod w statycznej aplikacji internetowej:
npx swa deploy --env production
Wdrożenie aplikacji może potrwać kilka minut. Po zakończeniu zostanie wyświetlony adres URL witryny.
W większości systemów można wybrać adres URL witryny, aby otworzyć ją w domyślnej przeglądarce.
Czyszczenie zasobów (opcjonalnie)
Jeśli nie kontynuujesz pracy z innymi samouczkami, usuń grupę zasobów i zasoby platformy Azure:
az group delete -n swa-tutorial
Usunięcie grupy zasobów spowoduje usunięcie wszystkich zawartych w niej zasobów. Tej akcji nie można cofnąć.