Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Referensi perintah CLI Azure Static Web Apps.
Commands
| Command | Description | Type | Status |
|---|---|---|---|
| swa login | Masuk ke Azure. | SWA Core | GA |
| swa init | Mengonfigurasi proyek Azure Static Web Apps baru. | SWA Core | GA |
| swa build | Membangun aplikasi. Jika Anda memiliki aplikasi Node.js, aplikasi akan menginstal dependensi terlebih dahulu. | SWA Core | GA |
| swa start | Mulai emulator Azure Static Web Apps dari direktori atau ikat ke server dev yang sedang berjalan. | SWA Core | GA |
| swa deploy | Sebarkan proyek saat ini ke Azure Static Web Apps. | SWA Core | GA |
| swa db | Buat dan edit konfigurasi koneksi database Static Web Apps Anda. | SWA Core | GA |
Global Parameters
| Parameter | Summary |
|---|---|
| --version, -v | Tampilkan nomor versi. |
| --verbose, --V [level] | Aktifkan output verbose. Nilai tingkat meliputi silly, info, log (default), dan silent. |
| --config, -c [path] | Jalur ke file swa-cli.config.json. |
| --config-name, -cn | Konfigurasi yang digunakan oleh CLI. |
| --print-config, -g | Cetak semua opsi yang diselesaikan. Defaultnya adalah false. |
| --help, -h | Tampilkan bantuan peka konteks. |
swa login
Masuk ke Azure.
Autentikasi dengan Azure untuk mendapatkan token penyebaran untuk Azure Static Web Apps, menggunakan swa deploy perintah .
Syntax
swa login
[--subscription-id]
[--resource-group]
[--tenant-id]
[--client-id]
[--client-secret]
[--app-name]
[--clear-credentials]
[--use-keychain]
[--no-use-keychain]
Examples
Contoh 1: Masuk interaktif ke Azure
swa login
Parameters
--subscription-id, -S
ID langganan Azure yang digunakan oleh proyek ini. Defaultnya adalah process.env.AZURE_SUBSCRIPTION_ID.
--resource-group, -R
Nama grup sumber daya. Anda dapat mengonfigurasi grup default menggunakan az configure --defaults group=<name>.
--tenant-id, -T
ID penyewa Azure. Defaultnya adalah process.env.AZURE_TENANT_ID.
--client-id, -C
ID klien Azure.
--client-secret, -CS
Rahasia klien Azure.
--app-name, -n
Nama aplikasi Azure Static Web Apps.
--clear-credentials -cc
Hapus kredensial yang dipertahankan sebelum masuk. Defaultnya adalah false.
--use-keychain, -u
Gunakan rantai kunci asli sistem operasi untuk kredensial persisten. Defaultnya adalah true.
--no-use-keychain, -nu
Nonaktifkan penggunaan rantai kunci asli sistem operasi.
swa init
Mengonfigurasi proyek Azure Static Web Apps baru.
Mengonfigurasi proyek Azure Static Web Apps baru dengan CLI Static Web Apps. Mode interaktif meminta nama konfigurasi, mendeteksi pengaturan proyek Anda dan kerangka kerja yang digunakan. Setelah selesai, aplikasi web statis baru dibuat dan swa-cli.config.json file dibuat di direktori saat ini.
Anda dapat menjalankan swa init beberapa kali untuk membuat konfigurasi yang berbeda untuk proyek Anda. Anda mungkin ingin melakukan ini jika Anda mengerjakan monorepo dan ingin mengonfigurasi proyek yang berbeda.
File konfigurasi yang dihasilkan digunakan di setiap perintah yang Anda jalankan dengan CLI Static Web Apps. Jika Anda memiliki beberapa konfigurasi bernama, Anda dapat menggunakan argumen atau --config-name opsi posisi untuk menentukan konfigurasi mana yang ingin Anda gunakan.
Berikut ini adalah contoh konfigurasi yang dihasilkan oleh init perintah:
{
"$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
Contoh 1: Buat konfigurasi baru secara interaktif.
swa init
Contoh 2: Buat konfigurasi baru menggunakan nilai default untuk semua opsi.
swa init --yes
Contoh 3: Inisialisasi proyek menggunakan konfigurasi bernama "myApp" dari file swa-cli.config.json.
swa init --config-name myApp
Parameters
--yes, -y
Menjawab "ya" untuk semua perintah, yang menonaktifkan mode interaktif. Defaultnya adalah false.
swa build
Membangun aplikasi. Jika Anda memiliki aplikasi Node.js, aplikasi akan menginstal dependensi terlebih dahulu.
Kasus penggunaan umum meliputi: Menginstal dependensi untuk aplikasi front-end dan API dan menjalankan perintah build untuk keduanya, hanya membangun proyek front-end atau API jika yang lain tidak memiliki langkah build.
Syntax
swa build
[--app-location]
[--api-location]
[--output-location]
[--app-build-command]
[--api-build-command]
[--auto]
Examples
Contoh 1: Buat aplikasi, dan instal dependensi secara opsional.
swa build
Contoh 2: Mendeteksi cara membuat aplikasi Anda dan menjalankan perintah build setelah menginstal dependensi.
swa build --auto
Contoh 3: Instal dependensi untuk aplikasi front-end.
swa build --app-location ./client
Contoh 4: Gunakan konfigurasi bernama myApp di swa-cli.config.json untuk membangun aplikasi front-end Anda.
swa build myApp
Parameters
--app-location, -a
Folder yang berisi kode sumber aplikasi front-end. Defaultnya adalah ..
--api-location, -i
Folder yang berisi kode sumber aplikasi API.
--output-location, -O
Folder yang berisi sumber bawaan aplikasi front-end. Jalur ini relatif terhadap --app-location. Defaultnya adalah ..
--app-build-command, -A
Membangun aplikasi front-end.
--api-build-command, -I
Membangun aplikasi API.
--auto
Secara otomatis mendeteksi cara membangun aplikasi front-end dan API Anda. Defaultnya adalah false.
swa start
Mulai emulator Azure Static Web Apps dari direktori atau ikat ke server dev yang sedang berjalan.
Melayani dari folder
Secara default, CLI memulai dan menyajikan konten statis apa pun dari direktori ./kerja saat ini :
swa start
Jika folder artefak aplikasi statis Anda berada di bawah folder yang berbeda (misalnya, ./my-dist), jalankan CLI dan berikan folder tersebut:
swa start ./my-dist
Melayani dari server dev
Saat mengembangkan aplikasi front-end Anda secara lokal, sering kali berguna untuk menggunakan server dev yang dilengkapi dengan CLI kerangka kerja front end Anda. Menggunakan CLI kerangka kerja memungkinkan Anda menggunakan fitur bawaan seperti "livereload" dan HMR (penggantian modul panas).
Untuk menggunakan SWA CLI dengan server dev lokal Anda, ikuti dua langkah berikut:
Mulai server dev lokal Anda seperti biasa. Misalnya, jika Anda menggunakan Angular:
ng serve(ataunpm start).Di terminal terpisah, jalankan
swa startdengan URI yang disediakan oleh server dev, dalam format berikut:
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Berikut adalah daftar port dan perintah default yang digunakan oleh beberapa server dev populer:
| 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 (Buat Aplikasi React) | 3000 |
swa start http://localhost:3000 |
| Svelte (sirv-cli) | 5000 |
swa start http://localhost:5000 |
| Vue | 3000 |
swa start http://localhost:3000 |
Alih-alih memulai server dev secara terpisah, Anda dapat memberikan perintah startup ke CLI.
# 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"
Kemudian akses aplikasi dengan layanan yang ditimulasi dari http://localhost:4280
Menyajikan aplikasi front-end dan API
Jika proyek Anda menyertakan fungsi API, CLI memeriksa apakah Azure Functions Core Tools diinstal dan tersedia. Jika tidak, CLI mengunduh dan menginstal versi yang tepat dari Azure Functions Core Tools.
Memulai server API secara otomatis
Jalankan CLI dan berikan folder yang berisi backend API (proyek Aplikasi Azure Functions yang valid):
# 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
Mulai server API secara manual
Saat mengembangkan backend Anda secara lokal, terkadang berguna untuk menjalankan Azure Functions Core Tools secara terpisah untuk melayani API Anda. Ini memungkinkan Anda menggunakan fitur bawaan seperti penelusuran kesalahan dan dukungan editor yang kaya.
Untuk menggunakan CLI dengan server dev backend API lokal Anda, ikuti dua langkah berikut:
Mulai API Anda menggunakan Azure Functions Core Tools:
func host startatau mulai penelusuran kesalahan di Visual Studio Code.Di terminal terpisah, jalankan SWA CLI dengan
--api-locationbendera dan URI server API lokal, dalam format berikut:
swa start ./my-dist --api-location http://localhost:7071
Database connections
Untuk memulai aplikasi Anda dengan koneksi database, gunakan --data-api-location parameter dan arahkan ke folder yang berisi file staticwebapp.database.config.json .
swa start ./src --data-api-location swa-db-connections
Syntax
swa start
Examples
Contoh 1: Mulai aplikasi dengan default.
swa start
Contoh 2: Mulai aplikasi dengan server dev ujung depan.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Contoh 3: Mulai aplikasi dengan server dev ujung depan dan ujung belakang.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT> --api-location http://localhost:7071
Parameters
--app-location, -a <PATH>
Folder yang berisi kode sumber aplikasi front end. Defaultnya adalah ..
--api-location, -i <PATH>
Folder yang berisi kode sumber aplikasi API.
--output-location, -O <PATH>
Folder yang berisi sumber bawaan aplikasi front end. Jalur relatif terhadap --app-location. Defaultnya adalah ..
--data-api-location
Folder yang berisi file staticwebapp.database.config.json .
--app-devserver-url, -D <URL>
Sambungkan ke server dev aplikasi di URL ini alih-alih menggunakan lokasi output.
--api-devserver-url, -is <URL>
Sambungkan ke server API di URL ini alih-alih menggunakan lokasi output.
--api-port, -j <API_PORT>
Port server API diteruskan ke func start. Defaultnya adalah 7071.
--host, -q <HOST>
Alamat host yang digunakan untuk server dev CLI. Defaultnya adalah localhost.
--port, -p <PORT>
Nilai port yang digunakan untuk server dev CLI. Bawaan 4280.
--ssl, -s
Sajikan aplikasi front end dan API melalui HTTPS. Defaultnya adalah false.
--ssl-cert, -e <SSL_CERT_LOCATION>
Sertifikat SSL (.crt) yang digunakan saat mengaktifkan HTTPS.
--ssl-key, -k <SSL_KEY_LOCATION>
Kunci SSL (.key) yang digunakan saat mengaktifkan HTTPS.
--run, -r <STARTUP_SCRIPT>
Lokasi perintah shell kustom atau file skrip untuk dijalankan saat startup.
--devserver-timeout, -t <TIME>
Jumlah waktu untuk menunggu (dalam detik) saat menyambungkan ke server dev aplikasi ujung depan atau server API. Defaultnya adalah 60.
--swa-config-location, -w <SWA_CONFIG_FILE_LOCATION>
Lokasi staticwebapp.config.json direktori file.
--open, -o
Buka browser ke server dev. Secara default adalah false.
--func-args, -f <FUNCTION_ARGUMENTS>
Teruskan argumen tambahan ke func start perintah .
swa deploy
Sebarkan proyek saat ini ke Azure Static Web Apps.
Kasus penggunaan umum meliputi:
Menyebarkan aplikasi ujung depan tanpa API
Menyebarkan aplikasi ujung depan dengan API
Menyebarkan aplikasi Blazor
Deployment token
SWA CLI mendukung penyebaran menggunakan token penyebaran. Ini sering berguna saat menyebarkan dari lingkungan CI/CD. Anda bisa mendapatkan token penyebaran baik dari:
Portal Microsoft Azure: Home → Static Web App → Ringkasan → Instans Anda → Mengelola token penyebaran
Jika Anda menggunakan Azure CLI, Anda bisa mendapatkan token penyebaran proyek Anda menggunakan perintah berikut:
az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
- Jika Anda menggunakan Azure Static Web Apps CLI, Anda bisa menggunakan perintah berikut:
swa deploy --print-token
Anda kemudian dapat menggunakan nilai tersebut --deployment-token <TOKEN> dengan atau Anda dapat membuat variabel lingkungan yang disebut SWA_CLI_DEPLOYMENT_TOKEN dan mengaturnya ke token penyebaran.
Important
Jangan simpan token penyebaran di repositori publik. Nilai ini harus tetap menjadi rahasia.
Menyebarkan aplikasi ujung depan tanpa API
Anda dapat menyebarkan aplikasi ujung depan tanpa API ke Azure Static Web Apps dengan menjalankan langkah-langkah berikut:
- Jika aplikasi front-end Anda memerlukan langkah build, jalankan
swa buildatau lihat instruksi build aplikasi Anda.
Opsi 1: Dari folder build yang ingin Anda sebarkan, jalankan perintah sebarkan:
cd build/
swa deploy
Note
Folder build harus berisi konten statis aplikasi yang ingin Anda sebarkan.
Opsi 2: Anda juga dapat menyebarkan folder tertentu:
Jika aplikasi front end Anda memerlukan langkah build, jalankan
swa buildatau lihat instruksi build aplikasi Anda.Sebarkan aplikasi Anda:
swa deploy ./my-dist
Menyebarkan aplikasi front-end dengan API
Untuk menyebarkan aplikasi ujung depan dan API ke Azure Static Web Apps, gunakan langkah-langkah berikut:
Jika aplikasi front end Anda memerlukan langkah build, jalankan
swa buildatau lihat instruksi build aplikasi Anda.Pastikan versi runtime bahasa API dalam
staticwebapp.config.jsonfile diatur dengan benar, misalnya:
{
"platform": {
"apiRuntime": "node:16"
}
}
Note
Jika proyek Anda tidak memiliki file apa pun staticwebapp.config.json , tambahkan file di bawah folder Anda outputLocation .
- Sebarkan aplikasi Anda:
swa deploy ./my-dist --api-location ./api
Menyebarkan aplikasi Blazor
Untuk menyebarkan aplikasi Blazor dengan API opsional ke Azure Static Web Apps, gunakan langkah-langkah berikut:
- Buat aplikasi Blazor Anda dalam mode Rilis :
dotnet publish -c Release -o bin/publish
- Dari akar proyek Anda, jalankan
deployperintah :
swa deploy ./bin/publish/wwwroot --api-location ./Api
Menyebarkan menggunakan swa-cli.config.json
Note
Jalur untuk outputLocation harus relatif terhadap appLocation.
Jika Anda menggunakan swa-cli.config.json file konfigurasi di proyek Anda dan memiliki satu entri konfigurasi, gunakan konfigurasi seperti ini:
{
"configurations": {
"my-app": {
"appLocation": "./",
"apiLocation": "api",
"outputLocation": "frontend",
"start": {
"outputLocation": "frontend"
},
"deploy": {
"outputLocation": "frontend"
}
}
}
}
Kemudian Anda dapat menyebarkan aplikasi dengan menjalankan langkah-langkah berikut:
Jika aplikasi front-end Anda memerlukan langkah build, jalankan
swa buildatau lihat instruksi build aplikasi Anda.Sebarkan aplikasi Anda:
swa deploy
Jika Anda memiliki beberapa entri konfigurasi, Anda dapat memberikan ID entri untuk menentukan mana yang akan digunakan:
swa deploy my-otherapp
Syntax
swa deploy
[--yes]
Examples
Contoh 1: Menyebarkan menggunakan token penyebaran.
swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>
Contoh 2: Menyebarkan menggunakan token penyebaran dari variabel lingkungan
SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/
Contoh 3: Menyebarkan menggunakan swa-cli.config.json file
swa deploy
swa deploy myconfig
Contoh 4: Mencetak token penyebaran
swa deploy --print-token
Contoh 5: Menyebarkan ke lingkungan tertentu
swa deploy --env production
swa db
Buat dan edit konfigurasi koneksi database Static Web Apps Anda.
Gunakan swa db init untuk menghasilkan sampel folder swa-db-connections , bersama dengan staticwebapp.database.config.json file konfigurasi. Jika Anda menggunakan Cosmos DB untuk database NoSQL, ini juga menghasilkan file skema sampel staticwebapp.database.schema.gql .
Syntax
swa db init --database-type <DATABASE_TYPE>
Examples
Contoh 1: Buat folder konfigurasi koneksi database sampel untuk database Azure SQL.
swa db init --database-type mssql
Parameters
--database-type, -t <DATABASE_TYPE>
(Diperlukan) Jenis database yang ingin Anda sambungkan (mssql, postgresql, cosmosdb_nosql, mysql).
--folder-name, -f <FOLDER_NAME>
Nama folder untuk mengambil alih nama folder konfigurasi koneksi database konvensi (pastikan Anda memperbarui file alur kerja CI/CD yang sesuai). Nilai defaultnya adalah swa-db-connections.
---connection-string, -cs <CONNECTION_STRING>
string koneksi database yang ingin Anda sambungkan.
--cosmosdb_nosql-database, -nd <COSMOSDB_NOSQL_DATABASE>
Database akun Cosmos DB yang ingin Anda sambungkan (hanya diperlukan jika menggunakan cosmosdb_nosql jenis database).
--cosmosdb_nosql-container, -nc <COSMOSDB_NOSQL_CONTAINER>
Kontainer akun Cosmos DB yang ingin Anda sambungkan.
--help, -h
Tampilkan bantuan untuk perintah.