Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Ссылка на команды CLI статических веб-приложений Azure.
Commands
| Command | Description | Type | Status |
|---|---|---|---|
| swa login | Вход в Azure. | SWA Core | GA |
| swa init | Настраивает новый проект Статические веб-приложения Azure. | SWA Core | GA |
| swa build | Создает приложение. Если у вас есть приложение Node.js, сначала он устанавливает зависимости. | SWA Core | GA |
| swa start | Запустите эмулятор Статические веб-приложения Azure из каталога или привязать к работающему серверу разработки. | SWA Core | GA |
| swa deploy | Разверните текущий проект в Статические веб-приложения Azure. | SWA Core | GA |
| swa db | Создайте и измените конфигурацию Статические веб-приложения подключения к базе данных. | SWA Core | GA |
Global Parameters
| Parameter | Summary |
|---|---|
| --version, -v | Отображение номера версии. |
| --verbose, --V [уровень] | Включите подробные выходные данные. К значениям уровня относятся silly, ( infolog по умолчанию) и silent. |
| --config, -c [путь] | Путь к файлу swa-cli.config.json. |
| --config-name, -cn | Конфигурация, используемая интерфейсом командной строки. |
| --print-config, -g | Печать всех разрешенных параметров. По умолчанию — false. |
| --help, -h | Отображение справки с учетом контекста. |
swa login
Вход в Azure.
Проверка подлинности с помощью Azure для получения маркера развертывания для Статические веб-приложения Azure с помощью swa deploy команды.
Syntax
swa login
[--subscription-id]
[--resource-group]
[--tenant-id]
[--client-id]
[--client-secret]
[--app-name]
[--clear-credentials]
[--use-keychain]
[--no-use-keychain]
Examples
Пример 1. Интерактивный вход в Azure
swa login
Parameters
--subscription-id, -S
Идентификатор подписки Azure, используемый этим проектом. Значение по умолчанию — process.env.AZURE_SUBSCRIPTION_ID.
--resource-group, -R
Имя группы ресурсов. Вы можете настроить группу по умолчанию с помощью az configure --defaults group=<name>.
--tenant-id, -T
Идентификатор клиента Azure. Значение по умолчанию — process.env.AZURE_TENANT_ID.
--client-id, -C
Идентификатор клиента Azure.
--client-secret, -CS
Секрет клиента Azure.
--app-name, -n
Статические веб-приложения Azure имя приложения.
--clear-credentials -cc
Удалите сохраненные учетные данные перед входом. Значение по умолчанию — false.
--use-keychain, -u
Используйте собственную цепочку ключей операционной системы для постоянных учетных данных. Значение по умолчанию — true.
--no-use-keychain, -nu
Отключите использование собственной цепочки ключей операционной системы.
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"
}
}
}
Syntax
swa init
[--yes]
Examples
Пример 1. Создание конфигурации в интерактивном режиме.
swa init
Пример 2. Создание новой конфигурации с использованием значений по умолчанию для всех параметров.
swa init --yes
Пример 3. Инициализация проекта с помощью конфигурации с именем MyApp из файла swa-cli.config.json.
swa init --config-name myApp
Parameters
--yes, -y
Ответы "да" всем запросам, которые отключают интерактивный режим. По умолчанию — false.
swa build
Создает приложение. Если у вас есть приложение Node.js, сначала он устанавливает зависимости.
Распространенные варианты использования включают: установка зависимостей для интерфейсного приложения и API и выполнение команд сборки для обоих, только создание внешнего или проекта API, если другой не имеет шага сборки.
Syntax
swa build
[--app-location]
[--api-location]
[--output-location]
[--app-build-command]
[--api-build-command]
[--auto]
Examples
Пример 1. Создание приложения и при необходимости установка зависимостей.
swa build
Пример 2. Обнаружение сборки приложения и выполнение команд сборки после установки зависимостей.
swa build --auto
Пример 3. Установка зависимостей для интерфейсного приложения.
swa build --app-location ./client
Пример 4. Используйте конфигурацию с именем myAppswa-cli.config.json для создания интерфейсного приложения.
swa build myApp
Parameters
--app-location, -a
Папка, содержащая исходный код интерфейсного приложения. По умолчанию — ..
--api-location, -i
Папка, содержащая исходный код приложения API.
--output-location, -O
Папка, содержащая встроенный источник интерфейсного приложения. Этот путь относительно --app-location. По умолчанию — ..
--app-build-command, -A
Создает интерфейсное приложение.
--api-build-command, -I
Создает приложение API.
--auto
Автоматически определяет, как создавать интерфейсные приложения и приложения API. По умолчанию — false.
swa start
Запустите эмулятор Статические веб-приложения Azure из каталога или привязать к работающему серверу разработки.
Обслуживание из папки
По умолчанию интерфейс командной строки запускает и обслуживает любое статическое содержимое из текущего рабочего каталога ./:
swa start
Если папка артефакта статического приложения находится под другой папкой (например, ./my-dist), запустите интерфейс командной строки и укажите следующую папку:
swa start ./my-dist
Обслуживание с сервера разработки
При разработке интерфейсного приложения локально рекомендуется использовать сервер разработки, который поставляется с интерфейсом командной строки интерфейсной платформы. С помощью интерфейса командной строки платформы можно использовать встроенные функции, такие как "печеньегруз" и HMR (горячая замена модуля).
Чтобы использовать SWA CLI с локальным сервером разработки, сделайте следующее:
Запустите локальный сервер разработки как обычно. Например, если вы используете Angular:
ng serve(илиnpm start).В отдельном терминале запустите
swa startURI, предоставленный сервером разработки, в следующем формате:
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Ниже приведен список портов и команд по умолчанию, используемых некоторыми популярными серверами разработки:
| 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 (создание приложения 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. Если нет, интерфейс командной строки скачивает и устанавливает правильную версию основных средств Функций Azure.
Автоматический запуск сервера 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
Database connections
Чтобы запустить приложение с подключением к базе данных, используйте --data-api-location параметр и наведите указатель на папку, содержащую файл staticwebapp.database.config.json .
swa start ./src --data-api-location swa-db-connections
Syntax
swa start
Examples
Пример 1. Запуск приложения с значениями по умолчанию.
swa start
Пример 2. Запуск приложения с сервером разработки переднего плана.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Пример 3. Запуск приложения с интерфейсным сервером и сервером серверной части разработки.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT> --api-location http://localhost:7071
Parameters
--app-location, -a <PATH>
Папка, содержащая исходный код интерфейсного приложения. По умолчанию — ..
--api-location, -i <PATH>
Папка, содержащая исходный код приложения API.
--output-location, -O <PATH>
Папка, содержащая встроенный источник интерфейсного приложения. Путь относительно --app-location. По умолчанию — ..
--data-api-location
Папка, содержащая файл staticwebapp.database.config.json .
--app-devserver-url, -D <URL>
Подключитесь к серверу разработки приложений по этому URL-адресу вместо использования выходного расположения.
--api-devserver-url, -is <URL>
Подключитесь к серверу API по этому URL-адресу вместо использования выходного расположения.
--api-port, -j <API_PORT>
Порт сервера API, переданный в func start. Значение по умолчанию — 7071.
--host, -q <HOST>
Адрес узла, используемый для сервера разработки CLI. По умолчанию — localhost.
--port, -p <PORT>
Значение порта, используемое для сервера разработки CLI.
4280по умолчанию.
--ssl, -s
Обслуживают интерфейсное приложение и API по протоколу HTTPS. По умолчанию — false.
--ssl-cert, -e <SSL_CERT_LOCATION>
SSL-сертификат (CRT), используемый при включении HTTPS.
--ssl-key, -k <SSL_KEY_LOCATION>
SSL-ключ (.key), используемый при включении HTTPS.
--run, -r <STARTUP_SCRIPT>
Расположение пользовательской команды оболочки или файла скрипта для запуска.
--devserver-timeout, -t <TIME>
Время ожидания (в секундах) при подключении к серверу разработки внешнего приложения или серверу API. Значение по умолчанию — 60.
--swa-config-location, -w <SWA_CONFIG_FILE_LOCATION>
Расположение staticwebapp.config.json каталога файла.
--open, -o
Откройте браузер на сервере разработки. По умолчанию — false.
--func-args, -f <FUNCTION_ARGUMENTS>
Передайте дополнительные аргументы команде func start .
swa deploy
Разверните текущий проект в Статические веб-приложения Azure.
Распространенные варианты использования:
Развертывание интерфейсного приложения без API
Развертывание интерфейсного приложения с помощью API
Развертывание приложения Blazor
Deployment token
Интерфейс командной строки 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 и задать ее маркеру развертывания.
Important
Не сохраняйте маркер развертывания в общедоступном репозитории. Это значение должно оставаться секретом.
Развертывание интерфейсного приложения без API
Вы можете развернуть интерфейсное приложение без API для Статические веб-приложения Azure, выполнив следующие действия.
- Если для внешнего приложения требуется шаг сборки, выполните
swa buildили обратитесь к инструкциям по сборке приложения.
Вариант 1. В папке сборки, которой вы хотите развернуть, выполните команду развертывания:
cd build/
swa deploy
Note
Папка build должна содержать статическое содержимое приложения, которое требуется развернуть.
Вариант 2. Вы также можете развернуть определенную папку:
Если для внешнего приложения требуется шаг сборки, выполните
swa buildили обратитесь к инструкциям по сборке приложения.Развертывание приложения:
swa deploy ./my-dist
Развертывание интерфейсного приложения с помощью API
Чтобы развернуть интерфейсное приложение и API для Статические веб-приложения Azure, выполните следующие действия.
Если для внешнего приложения требуется шаг сборки, выполните
swa buildили обратитесь к инструкциям по сборке приложения.Убедитесь, что версия среды выполнения языка API в
staticwebapp.config.jsonфайле задана правильно, например:
{
"platform": {
"apiRuntime": "node:16"
}
}
Note
Если у проекта нет 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
Note
Путь к 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
Syntax
swa deploy
[--yes]
Examples
Пример 1. Развертывание с помощью маркера развертывания.
swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>
Пример 2. Развертывание с помощью маркера развертывания из переменных среды
SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/
Пример 3. Развертывание с помощью swa-cli.config.json файла
swa deploy
swa deploy myconfig
Пример 4. Печать маркера развертывания
swa deploy --print-token
Пример 5. Развертывание в определенной среде
swa deploy --env production
swa db
Создайте и измените конфигурацию Статические веб-приложения подключения к базе данных.
Используется swa db init для создания примера папки swa-db-connections вместе с файлом staticwebapp.database.config.json конфигурации. Если вы используете базу данных Cosmos DB для NoSQL, это также создает пример staticwebapp.database.schema.gql файла схемы.
Syntax
swa db init --database-type <DATABASE_TYPE>
Examples
Пример 1. Создание образца папки конфигурации подключения к базе данных базы данных SQL Azure.
swa db init --database-type mssql
Parameters
--database-type, -t <DATABASE_TYPE>
(обязательно) Тип базы данных, которую требуется подключить (mssql, postgresql, cosmosdb_nosql, mysql).
--folder-name, -f <FOLDER_NAME>
Имя папки для переопределения имени папки конфигурации подключения к базе данных соглашения (убедитесь, что вы обновляете файлы рабочих процессов CI/CD соответствующим образом). Значение по умолчанию — swa-db-connections.
---connection-string, -cs <CONNECTION_STRING>
Строка подключения базы данных, которую требуется подключить.
--cosmosdb_nosql-database, -nd <COSMOSDB_NOSQL_DATABASE>
База данных учетной записи Cosmos DB, которую требуется подключить (только при использовании cosmosdb_nosql типа базы данных).
--cosmosdb_nosql-container, -nc <COSMOSDB_NOSQL_CONTAINER>
Контейнер учетной записи Cosmos DB, которую требуется подключить.
--help, -h
Отображение справки по команде.