Aracılığıyla paylaş


Azure Static Web Apps CLI ile statik web uygulaması dağıtma

Azure Static Web Apps CLI (SWA CLI), geçerli projeyi Azure Static Web Apps'e dağıtmak için komutunu içerir deploy .

Yaygın dağıtım senaryoları şunlardır:

  • API'siz bir ön uç uygulaması
  • API'ye sahip bir ön uç uygulaması
  • Blazor uygulamaları

Dağıtım belirteci

SWA CLI, CI/CD ortamlarında kurulumları etkinleştirmek için dağıtım belirteci kullanarak dağıtmayı destekler.

Dağıtım belirtecini şu kaynaktan alabilirsiniz:

  • Azure portalı: Dağıtım belirtecini yönetme → Örneğinize → Genel Bakış → Giriş → Statik Web Uygulaması

  • Azure CLI: Komutunu kullanarak secrets list :

    az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
    
  • Azure Static Web Apps CLI: komutunu kullanarak deploy :

    swa deploy --print-token
    

Ardından ile belirteç değerini --deployment-token <TOKEN> kullanabilir veya adlı SWA_CLI_DEPLOYMENT_TOKEN bir ortam değişkeni oluşturabilir ve bunu dağıtım belirteci olarak ayarlayabilirsiniz.

Önemli

Dağıtım belirteçlerini genel bir depoda depolamayın.

API olmadan ön uç uygulaması dağıtma

Api'siz bir ön uç uygulamasını Azure Static Web Apps'e dağıtabilirsiniz. Ön uç uygulamanız bir derleme adımı gerektiriyorsa, uygulamanızın derleme yönergelerini çalıştırın swa build veya başvurun.

Dağıtımınızı yapılandırmak için gereksinimlerinize en uygun seçeneği belirtin

  • 1. Seçenek: Dağıtmak istediğiniz derleme klasöründen deploy komutunu çalıştırın:

    cd build/
    swa deploy
    

    Not

    Derleme klasörü dağıtılacak uygulamanızın statik içeriğini içermelidir.

  • 2. Seçenek: Belirli bir klasörü de dağıtabilirsiniz:

    1. Ön uç uygulamanız bir derleme adımı gerektiriyorsa, uygulamanızın derleme yönergelerini çalıştırın swa build veya başvurun.

    2. Uygulamanızı dağıtın:

    swa deploy ./my-dist
    

API ile ön uç uygulaması dağıtma

API uç noktaları olan bir uygulamayı dağıtmak için aşağıdaki adımları kullanın.

  1. Ön uç uygulamanız bir derleme adımı gerektiriyorsa, uygulamanızın derleme yönergelerini çalıştırın swa build veya başvurun.

  2. staticwebapp.config.json dosyasındaki API dili çalışma zamanı sürümünün doğru ayarlandığından emin olun, örneğin:

    {
      "platform": {
        "apiRuntime": "node:16"
      }
    }
    

    Not

    Projenizde staticwebapp.config.json dosyası yoksa klasörünüzün outputLocation altına bir dosya ekleyin.

  3. Uygulamanızı dağıtın:

    swa deploy ./my-dist --api-location ./api
    

Blazor uygulaması dağıtma

Aşağıdaki adımları kullanarak bir Blazor uygulaması dağıtabilirsiniz.

  1. Blazor uygulamanızı Sürüm modunda oluşturun:

    dotnet publish -c Release -o bin/publish
    
  2. Projenizin kökünden deploy komutunu çalıştırın:

    swa deploy ./bin/publish/wwwroot --api-location ./Api
    

Yapılandırma dosyası kullanarak dağıtma

Not

için outputLocation yolu ile göreli appLocationolmalıdır.

Projenizde tek bir yapılandırma girdisi olan bir swa-cli.config.json yapılandırma dosyası kullanıyorsanız aşağıdaki adımları çalıştırarak uygulamanızı dağıtabilirsiniz.

Başvuru için, tek bir yapılandırma girişi örneği aşağıdaki kod parçacığına benzer.

{
  "configurations": {
    "my-app": {
      "appLocation": "./",
      "apiLocation": "api",
      "outputLocation": "frontend",
      "start": {
        "outputLocation": "frontend"
      },
      "deploy": {
        "outputLocation": "frontend"
      }
    }
  }
}
  1. Ön uç uygulamanız bir derleme adımı gerektiriyorsa, uygulamanızın derleme yönergelerini çalıştırın swa build veya başvurun.

  2. Uygulamanızı dağıtın.

swa deploy

Birden çok yapılandırma girdiniz varsa, hangisinin kullanılacağını belirtmek için giriş kimliğini belirtebilirsiniz:

swa deploy my-otherapp

Seçenekler

Ile kullanabileceğiniz swa deployseçenekler şunlardır:

  • -a, --app-location <path>: ön uç uygulamasının kaynak kodunu içeren klasör (varsayılan: ".")
  • -i, --api-location <path>: API uygulamasının kaynak kodunu içeren klasör
  • -O, --output-location <path>: ön uç uygulamasının yerleşik kaynağını içeren klasör. Yol görelidir --app-location (varsayılan: ".")
  • -w, --swa-config-location <swaConfigLocation>: staticwebapp.config.json dosyasının bulunduğu dizin
  • -d, --deployment-token <secret>: Statik Web Uygulamaları ile kimlik doğrulaması yapmak için kullanılan gizli dizi belirteci
  • -dr, --dry-run: gerçekten çalıştırmadan bir dağıtım işleminin benzetimini yap (varsayılan: false)
  • -pt, --print-token: dağıtım belirtecini yazdırın (varsayılan: false)
  • --env [environment]: projenin dağıtılacağı dağıtım ortamının türü (varsayılan: "preview")
  • -S, --subscription-id <subscriptionId>: Bu proje tarafından kullanılan Azure abonelik kimliği (varsayılan: process.env.AZURE_SUBSCRIPTION_ID)
  • -R, --resource-group <resourceGroupName>: Bu proje tarafından kullanılan Azure kaynak grubu
  • -T, --tenant-id <tenantId>: Azure kiracı kimliği (varsayılan: process.env.AZURE_TENANT_ID)
  • -C, --client-id <clientId>: Azure istemci kimliği
  • -CS, --client-secret <clientSecret>: Azure istemci gizli dizisi
  • -n, --app-name <appName>: Azure Static Web App uygulama adı
  • -cc, --clear-credentials: oturum açmadan önce kalıcı kimlik bilgilerini temizleyin (varsayılan: false)
  • -u, --use-keychain: kalıcı kimlik bilgileri için işletim sistemi yerel anahtar zincirini kullanmayı etkinleştirin (varsayılan: true)
  • -nu, --no-use-keychain: işletim sistemi yerel anahtar zincirini kullanmayı devre dışı bırakma
  • -h, --help: komut için yardım görüntüleme

Kullanım

Dağıtım belirteci kullanarak dağıtma.

swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>

Ortam değişkenlerinden bir dağıtım belirteci kullanarak dağıtın.

SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/

Dosya kullanarak swa-cli.config.json dağıtma

swa deploy
swa deploy myconfig

Dağıtım belirtecini yazdırın.

swa deploy --print-token

Belirli bir ortama dağıtma.

swa deploy --env production

Sonraki adımlar