swa
Команды
Имя | Описание | Тип | Состояние |
---|---|---|---|
swa login |
Вход в Azure |
SWA Core | Общедоступная версия |
swa build |
Создает приложение. Если у вас есть приложение Node.js, сначала он установит зависимости. |
SWA Core | Общедоступная версия |
swa start |
Запустите эмулятор Статические веб-приложения Azure из каталога или привязать к работающему серверу разработки. |
SWA Core | Общедоступная версия |
swa deploy |
Разверните текущий проект в Статические веб-приложения Azure. |
SWA Core | Общедоступная версия |
swa db |
Создайте и измените конфигурацию Статические веб-приложения подключения к базе данных. |
SWA Core | Общедоступная версия |
swa login
Вход в Azure
Проверка подлинности с помощью Azure для получения маркера развертывания для Статические веб-приложения Azure с помощью swa deploy
команды.
swa login
[--subscription-id]
[--resource-group]
[--tenant-id]
[--client-id]
[--client-secret]
[--app-name]
[--clear-credentials]
[--use-keychain]
[--no-use-keychain]
Примеры
Интерактивный вход в Azure
swa login
Необязательные параметры
Идентификатор подписки Azure, используемый этим проектом. Значение по умолчанию — process.env.AZURE_SUBSCRIPTION_ID
.
Имя группы ресурсов. Вы можете настроить расположение по умолчанию с помощью az configure --defaults group=<name>
.
Идентификатор клиента Azure. Значение по умолчанию — process.env.AZURE_TENANT_ID
.
Идентификатор клиента Azure.
Секрет клиента Azure.
Статические веб-приложения Azure имя приложения.
Удалите сохраненные учетные данные перед входом. Значение по умолчанию — false
.
Используйте собственную цепочку ключей операционной системы для постоянных учетных данных. Значение по умолчанию — true
.
Отключите использование собственной цепочки ключей операционной системы.
Глобальные параметры
Отображение номера версии.
Включите подробные выходные данные. К значениям уровня относятся silly
, ( info
log
по умолчанию) и silent
.
Путь к файлу swa-cli.config.json.
Конфигурация, используемая интерфейсом командной строки.
Печать всех разрешенных параметров. По умолчанию — false
.
Отображение справки с учетом контекста.
swa init
Настраивает новый проект Статические веб-приложения Azure.
Настраивает новый проект Статические веб-приложения Azure с помощью интерфейса командной строки Статические веб-приложения. Интерактивный режим запрашивает имя конфигурации, определит параметры проекта и используемые платформы. После завершения создается новое статическое веб-приложение, а файл swa-cli.config.json создается в текущем каталоге.
Для создания различных конфигураций для проекта можно выполнять swa init
несколько раз. Это можно сделать, если вы работаете над monorepo и хотите настроить различные проекты.
Созданный файл конфигурации используется в каждой команде, выполняемой с помощью интерфейса командной строки Статические веб-приложения. Если у вас несколько именованных конфигураций, можно использовать позиционный аргумент или --config-name
параметр, чтобы указать нужную конфигурацию.
Ниже приведен пример конфигурации, созданной командой init
:
"$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"
}
}
} ```
swa init
[--yes]
Примеры
Создайте новую конфигурацию в интерактивном режиме.
swa init
Создайте новую конфигурацию, используя значения по умолчанию для всех параметров.
swa init --yes
Инициализировать проект с помощью конфигурации с именем MyApp из файла swa-cli.config.json.
swa init --config-name myApp
Необязательные параметры
Ответы "да" всем запросам, которые отключают интерактивный режим. По умолчанию — false
.
Глобальные параметры
Отображение номера версии.
Включите подробные выходные данные. К значениям уровня относятся silly
, ( info
log
по умолчанию) и silent
.
Путь к файлу swa-cli.config.json.
Конфигурация, используемая интерфейсом командной строки.
Печать всех разрешенных параметров. По умолчанию — false
.
Отображение справки с учетом контекста.
swa start
Запустите эмулятор Статические веб-приложения Azure из каталога или привязать к работающему серверу разработки.
Обслуживание из папки
По умолчанию интерфейс командной строки запускает и обслуживает любое статическое содержимое из текущего рабочего каталога ./
:
swa start
Если папка артефакта статического приложения находится под другой папкой (например, ./my-dist
), запустите интерфейс командной строки и укажите следующую папку:
swa start ./my-dist
Обслуживание с сервера разработки
При разработке интерфейсного приложения локально рекомендуется использовать сервер разработки, который поставляется с интерфейсом командной строки интерфейсной платформы. С помощью интерфейса командной строки платформы можно использовать встроенные функции, такие как "печеньегруз" и HMR (горячая замена модуля). Чтобы использовать SWA CLI с локальным сервером разработки, сделайте следующее:
- Запустите локальный сервер разработки как обычно. Например, если вы используете Angular:
ng serve
(илиnpm start
). - В отдельном терминале запустите
swa start
URI, предоставленный сервером разработки, в следующем формате:
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Ниже приведен список портов и команд по умолчанию, используемых некоторыми популярными серверами разработки:
Средство | Порт | Команда |
---|---|---|
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 (создание приложения React) | 3000 |
swa start http://localhost:3000 |
Svelte (sirv-cli) | 5000 |
swa start http://localhost:5000 |
Vue | 3000 |
swa start http://localhost:3000 |
Вместо запуска сервера разработки отдельно можно указать команду запуска в ИНТЕРФЕЙС командной строки.
# 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"
Затем получите доступ к приложению с эмулированными службами из http://localhost:4280
Обслуживание интерфейсного приложения и API
Если проект включает функции API, интерфейс командной строки проверяет, установлены ли и доступны Функции Azure Core Tools. Если нет, интерфейс командной строки скачивает и устанавливает правильную версию Функции Azure Core Tools.
Автоматический запуск сервера API
Запустите интерфейс командной строки и укажите папку, содержащую серверную часть API (допустимый проект приложения Функции Azure):
# 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
Запуск сервера API вручную
При разработке серверной части локально иногда полезно запускать Функции Azure Core Tools отдельно для обслуживания API. Это позволяет использовать встроенные функции, такие как отладка и поддержка расширенных редакторов. Чтобы использовать ИНТЕРФЕЙС командной строки с локальным сервером разработки API, выполните следующие два действия.
- Запустите API с помощью Функции Azure основных средств:
func host start
или начать отладку в VS Code. - В отдельном терминале запустите интерфейс командной строки SWA с флагом
--api-location
и универсальным кодом ресурса (URI) локального сервера API в следующем формате:
swa start ./my-dist --api-location http://localhost:7071
Подключения к базе данных
Чтобы запустить приложение с подключением к базе данных, используйте --data-api-location
параметр и наведите указатель на папку, содержащую файл staticwebapp.database.config.json.
swa start ./src --data-api-location swa-db-connections
Примеры
Запустите приложение с значениями по умолчанию.
swa start
Запустите приложение с сервером разработки переднего плана.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Запустите приложение с сервером разработки внешнего интерфейса и сервером серверной части.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT> --api-location http://localhost:7071
Необязательные параметры
Папка, содержащая исходный код интерфейсного приложения. По умолчанию — .
.
Папка, содержащая исходный код приложения API.
Папка, содержащая встроенный источник интерфейсного приложения. Путь относительно --app-location
. По умолчанию — .
.
Папка, содержащая файл staticwebapp.database.config.json .
Подключитесь к серверу разработки приложений по этому URL-адресу вместо использования выходного расположения.
Подключитесь к серверу API по этому URL-адресу вместо использования выходного расположения.
Порт сервера API, переданный в func start
. Значение по умолчанию — 7071.
Адрес узла, используемый для сервера разработки CLI. По умолчанию — localhost
.
Значение порта, используемое для сервера разработки CLI. Значение по умолчанию: 4280
.
Обслуживают интерфейсное приложение и API по протоколу HTTPS. По умолчанию — false
.
SSL-сертификат (CRT), используемый при включении HTTPS.
SSL-ключ (.key), используемый при включении HTTPS.
Расположение пользовательской команды оболочки или файла скрипта для запуска.
Время ожидания (в секундах) при подключении к серверу разработки внешнего приложения или серверу API. Значение по умолчанию — 60.
Расположение staticwebapp.config.json
каталога файла.
Откройте браузер на сервере разработки. По умолчанию — false.
Передайте дополнительные аргументы команде func start
.
Глобальные параметры
Отображение номера версии.
Включите подробные выходные данные. К значениям уровня относятся silly
, ( info
log
по умолчанию) и silent
.
Путь к файлу swa-cli.config.json.
Конфигурация, используемая интерфейсом командной строки.
Печать всех разрешенных параметров. По умолчанию — false
.
Отображение справки с учетом контекста.
swa build
Создает приложение. Если у вас есть приложение Node.js, сначала он установит зависимости.
Распространенные варианты использования включают: установка зависимостей для интерфейсного приложения и API и выполнение команд сборки для обоих, только создание проекта внешнего интерфейса или API, если другой не имеет шага сборки.
swa build
[--app-location]
[--api-location]
[--output-location]
[--app-build-command]
[--api-build-command]
[--auto]
Примеры
Создайте приложение и при необходимости установите зависимости.
swa build
Определите, как создать приложение и выполнить команды сборки после установки зависимостей.
swa build --auto
Установите зависимости для интерфейсного приложения.
swa build --app-location ./client
Используйте конфигурацию с именем MyApp в *swa-cli.config.json*, чтобы создать интерфейсное приложение.
swa build myApp
Необязательные параметры
Папка, содержащая исходный код интерфейсного приложения. По умолчанию — .
.
Папка, содержащая исходный код приложения API.
Папка, содержащая встроенный источник интерфейсного приложения. Этот путь относительно --app-location
. По умолчанию — .
.
Создает интерфейсное приложение.
Создает приложение API.
Автоматически определяет, как создавать интерфейсные приложения и приложения API. По умолчанию — false
.
Глобальные параметры
Отображение номера версии.
Включите подробные выходные данные. К значениям уровня относятся silly
, ( info
log
по умолчанию) и silent
.
Путь к файлу swa-cli.config.json.
Конфигурация, используемая интерфейсом командной строки.
Печать всех разрешенных параметров. По умолчанию — false
.
Отображение справки с учетом контекста.
swa deploy
Разверните текущий проект в Статические веб-приложения Azure.
Типичные примеры такой ситуации:
- Развертывание интерфейсного приложения без API
- Развертывание интерфейсного приложения с помощью API
- Развертывание приложения Blazor
Маркер развертывания
Интерфейс командной строки SWA поддерживает развертывание с помощью маркера развертывания. Это часто полезно при развертывании из среды CI/CD. Вы можете получить маркер развертывания из следующих способов:
Портал Azure: домашняя → статических веб-приложений → экземпляр → обзор → управление маркером развертывания
Если вы используете Azure CLI, вы можете получить маркер развертывания проекта с помощью следующей команды:
az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
Если вы используете интерфейс командной строки Статические веб-приложения Azure, можно использовать следующую команду:
swa deploy --print-token
Затем можно использовать это значение с
--deployment-token <TOKEN>
именем или создать переменную среды, вызываемуюSWA_CLI_DEPLOYMENT_TOKEN
и задать ее маркеру развертывания.Важно. Не сохраняйте маркер развертывания в общедоступный репозиторий. Это значение должно оставаться секретом.
Развертывание интерфейсного приложения без API
Вы можете развернуть интерфейсное приложение без API для Статические веб-приложения Azure, выполнив следующие действия.
- Если для внешнего приложения требуется шаг сборки, выполните
swa build
или обратитесь к инструкциям по сборке приложения.
Вариант 1. Из папки сборки, которой вы хотите развернуть, выполните команду развертывания:
cd build/
swa deploy
Примечание. Папка
build
должна содержать статическое содержимое приложения, которое требуется развернуть. Вариант 2. Вы также можете развернуть определенную папку:
- Если для внешнего приложения требуется шаг сборки, выполните
swa build
или обратитесь к инструкциям по сборке приложения. - Развертывание приложения:
swa deploy ./my-dist
Развертывание интерфейсного приложения с помощью API
Чтобы развернуть интерфейсное приложение и API для Статические веб-приложения Azure, выполните следующие действия.
- Если для внешнего приложения требуется шаг сборки, выполните
swa build
или обратитесь к инструкциям по сборке приложения. - Убедитесь, что версия среды выполнения языка API в
staticwebapp.config.json
файле задана правильно, например:
{
"platform": {
"apiRuntime": "node:16"
}
}
Примечание. Если у проекта нет
staticwebapp.config.json
файла, добавьте его вoutputLocation
папку.
- Развертывание приложения:
swa deploy ./my-dist --api-location ./api
Развертывание приложения Blazor
Чтобы развернуть приложение Blazor с необязательным API для Статические веб-приложения Azure, выполните следующие действия.
- Создайте приложение Blazor в режиме выпуска :
dotnet publish -c Release -o bin/publish
- В корневом каталоге проекта выполните
deploy
команду:
swa deploy ./bin/publish/wwwroot --api-location ./Api
Развертывание с помощью swa-cli.config.json
Примечание. Путь
outputLocation
к нему должен быть относительнымappLocation
. Если вы используетеswa-cli.config.json
файл конфигурации в проекте и имеете одну запись конфигурации, используйте такую конфигурацию:
{
"configurations": {
"my-app": {
"appLocation": "./",
"apiLocation": "api",
"outputLocation": "frontend",
"start": {
"outputLocation": "frontend"
},
"deploy": {
"outputLocation": "frontend"
}
}
}
}
Затем вы можете развернуть приложение, выполнив следующие действия:
- Если для внешнего приложения требуется шаг сборки, выполните
swa build
или обратитесь к инструкциям по сборке приложения. - Развертывание приложения:
swa deploy
Если у вас несколько записей конфигурации, можно указать идентификатор записи, чтобы указать, какой из них следует использовать:
swa deploy my-otherapp
swa deploy
[--yes]
Примеры
Развертывание с помощью маркера развертывания.
swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>
Развертывание с помощью маркера развертывания из переменных среды
SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/
Развертывание с помощью файла swa-cli.config.json
swa deploy swa deploy myconfig
Печать маркера развертывания
swa deploy --print-token
Развертывание в определенной среде
swa deploy --env production
Глобальные параметры
Отображение номера версии.
Включите подробные выходные данные. К значениям уровня относятся silly
, ( info
log
по умолчанию) и silent
.
Путь к файлу swa-cli.config.json.
Конфигурация, используемая интерфейсом командной строки.
Печать всех разрешенных параметров. По умолчанию — false
.
Отображение справки с учетом контекста.
swa db
Создайте и измените конфигурацию Статические веб-приложения подключения к базе данных.
Используется swa db init
для создания примера папки swa-db-connections , а также файла конфигурации staticwebapp.database.config.json . Если вы используете базу данных Cosmos DB для NoSQL, это также создаст пример файла схемы staticwebapp.database.schema.gql .
swa db init --database-type <DATABASE_TYPE>
Примеры
Создайте образец папки конфигурации подключения базы данных для базы данных SQL Azure.
swa db init --database-type mssql
Необязательные параметры
(обязательно) Тип базы данных, которую требуется подключить (mssql, postgresql, cosmosdb_nosql, mysql).
Имя папки для переопределения имени папки конфигурации подключения к базе данных соглашения (убедитесь, что вы обновляете файлы рабочих процессов CI/CD соответствующим образом). Значение по умолчанию — swa-db-connections
.
Строка подключения базы данных, которую требуется подключить.
База данных учетной записи Cosmos DB, которую требуется подключить (только при использовании типа базы данных cosmosdb_nosql).
Контейнер учетной записи Cosmosdb, которую требуется подключить.
Отображение справки по команде.
Глобальные параметры
Отображение номера версии.
Включите подробные выходные данные. К значениям уровня относятся silly
, ( info
log
по умолчанию) и silent
.
Путь к файлу swa-cli.config.json.
Конфигурация, используемая интерфейсом командной строки.
Печать всех разрешенных параметров. По умолчанию — false
.
Отображение справки с учетом контекста.