Een web-app maken die gebruikmaakt van de service SignalR en GitHub-verificatie
Met dit voorbeeldscript maakt u een nieuwe resource voor de Azure SignalR-service, die vervolgens wordt gebruikt om realtime updates van inhoud te pushen naar clients. Met dit script worden ook een nieuwe web-app en een App Service-plan toegevoegd voor het hosten van een web-app van ASP.NET Core die de SignalR-service gebruikt. De web-app is geconfigureerd met app-instellingen voor het maken van verbinding met de nieuwe SignalR-serviceresource en voor het verifiëren met GitHub-verificatie. De web-app wordt ook geconfigureerd voor het gebruik van een implementatiebron van een lokale Git-opslagplaats.
Als u geen Azure-abonnement hebt, kunt u een gratis Azure-account maken voordat u begint.
Azure Cloud Shell
Azure host Azure Cloud Shell, een interactieve shell-omgeving die u via uw browser kunt gebruiken. U kunt Bash of PowerShell gebruiken met Cloud Shell om met Azure-services te werken. U kunt de vooraf geïnstalleerde Cloud Shell-opdrachten gebruiken om de code in dit artikel uit te voeren zonder dat u iets hoeft te installeren in uw lokale omgeving.
Om Azure Cloud Shell op te starten:
Optie | Voorbeeld/koppeling |
---|---|
Selecteer Uitproberen in de rechterbovenhoek van een code- of opdrachtblok. Als u Try It selecteert, wordt de code of opdracht niet automatisch gekopieerd naar Cloud Shell. | |
Ga naar https://shell.azure.com, of selecteer de knop Cloud Shell starten om Cloud Shell in uw browser te openen. | |
Klik op de knop Cloud Shell in het menu in de balk rechtsboven in de Azure-portal. |
Azure Cloud Shell gebruiken:
Start Cloud Shell.
Selecteer de knop Kopiëren op een codeblok (of opdrachtblok) om de code of opdracht te kopiëren.
Plak de code of opdracht in de Cloud Shell-sessie door Ctrl+Shift+V in Windows en Linux te selecteren of door Cmd+Shift+V te selecteren in macOS.
Selecteer Enter om de code of opdracht uit te voeren.
Voorbeeldscripts
Azure Cloud Shell starten
Azure Cloud Shell is een gratis interactieve shell waarmee u de stappen in dit artikel kunt uitvoeren. In deze shell zijn algemene Azure-hulpprogramma's vooraf geïnstalleerd en geconfigureerd voor gebruik met uw account.
Als u Cloud Shell wilt openen, selecteert u Proberen in de rechterbovenhoek van een codeblok. U kunt Cloud Shell ook openen in een afzonderlijk browsertabblad door naar https://shell.azure.com te gaan.
Wanneer Cloud Shell wordt geopend, controleert u of Bash is geselecteerd voor uw omgeving. Volgende sessies gebruiken Azure CLI in een Bash-omgeving, selecteer Kopiëren om de codeblokken te kopiëren, plak deze in Cloud Shell en druk op Enter om deze uit te voeren.
Aanmelden bij Azure
Cloud Shell wordt automatisch geverifieerd onder het eerste account waarmee is aangemeld. Gebruik het volgende script om u aan te melden met een ander abonnement, waarbij u <Subscription ID>
uw Azure-abonnements-id vervangt. Als u geen Azure-abonnement hebt, kunt u een gratis Azure-account maken voordat u begint.
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
Zie Voor meer informatie het instellen van een actief abonnement of het interactief aanmelden
De SignalR-service maken met een App Service
# Create a SignalR Service with an App Service
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-azure-signalr-rg-$randomIdentifier"
tag="create-signal-service-with-app-service"
signalRSvc="msdocs-signalr-svc-$randomIdentifier"
webApp="msdocs-web-app-signalr-$randomIdentifier"
appSvcPlan="msdocs-app-svc-plan-$randomIdentifier"
signalRSku="Standard_S1"
unitCount="1"
serviceMode="Default"
planSku="Free"
# Create a resource group
echo "Creating $resourceGroup in "$location"..."
az group create --name $resourceGroup --location "$location" --tag $tag
# Create the Azure SignalR Service resource
echo "Creating $signalRSvc"
az signalr create \
--name $signalRSvc \
--resource-group $resourceGroup \
--sku $signalRSku \
--unit-count $unitCount \
--service-mode $serviceMode
# Create an App Service plan.
echo "Creating $appSvcPlan"
az appservice plan create --name $appSvcPlan --resource-group $resourceGroup --sku $planSku
# Create the Web App
echo "Creating $webApp"
az webapp create --name $webApp --resource-group $resourceGroup --plan $appSvcPlan
# Get the SignalR primary connection string
primaryConnectionString=$(az signalr key list --name $signalRSvc \
--resource-group $resourceGroup --query primaryConnectionString -o tsv)
echo $primaryConnectionString
# Add an app setting to the web app for the SignalR connection
az webapp config appsettings set --name $webApp --resource-group $resourceGroup \
--settings "AzureSignalRConnectionString=$primaryConnectionString"
GitHub-verificatie en Git-implementatie inschakelen voor web-app
Werk de waarden in het volgende script bij voor de gewenste gebruikersnaam voor de implementatie en de bijbehorende passwor
deploymentUser=<Replace with your desired username> deploymentUserPassword=<Replace with your desired password>
Werk de waarden in het volgende script bij op basis van de registratie van uw GitHub OAuth-app.
GitHubClientId=<Replace with your GitHub OAuth app Client ID> GitHubClientSecret=<Replace with your GitHub OAuth app Client Secret>
App-instellingen toevoegen voor gebruik met GitHub-verificatie
az webapp config appsettings set --name $webApp --resource-group $resourceGroup --settings "GitHubClientSecret=$GitHubClientSecret"
Werk de web-app bij met de gewenste gebruikersnaam en het gewenste wachtwoord voor de implementatie
az webapp deployment user set --user-name $deploymentUser --password $deploymentUserPassword
Configureer git-implementatie en retourneer de implementatie-URL.
az webapp deployment source config-local-git --name $webAppName --resource-group $resourceGroupName --query [url] -o tsv
Resources opschonen
Gebruik de volgende opdracht om de resourcegroep en alle bijbehorende resources te verwijderen met behulp van de opdracht az group delete - tenzij u deze resources voortdurend nodig hebt. Het kan even duren voordat sommige van deze resources zijn gemaakt en dat deze kunnen worden verwijderd.
az group delete --name $resourceGroup
Voorbeeldverwijzing
Elke opdracht in de tabel is een koppeling naar specifieke documentatie over de opdracht. In dit script worden de volgende opdrachten gebruikt:
Opdracht | Opmerkingen |
---|---|
az group create | Hiermee wordt een resourcegroep gemaakt waarin alle resources worden opgeslagen. |
az signalr create | Hiermee maakt u een resource voor de Azure SignalR-service. |
az signalr key list | Hiermee vraagt u de sleutels op die door uw toepassing worden gebruikt om realtime updates van inhoud te pushen met SignalR. |
az appservice plan create | Hiermee maakt u een Azure App Service-plan voor het hosten van web-apps. |
az webapp create | Hiermee maakt u een Azure-web-app met behulp van het App Service-hostingplan. |
az webapp config appsettings set | Hiermee voegt u nieuwe app-instellingen toe voor de web-app. Deze app-instellingen worden gebruikt voor het opslaan van de SignalR-verbindingsreeks en geheimen van GitHub OAuth-app. |
az webapp deployment user set | Hiermee werkt u de implementatiereferenties bij. |
az webapp deployment source config-local-git | Hiermee haalt u een URL op voor een eindpunt van de git-opslagplaats voor het klonen en pushen voor de implementatie van de web-app. |
Volgende stappen
Raadpleeg de documentatie van Azure CLI voor meer informatie over de Azure CLI.
Extra CLI-voorbeeldscripts voor de Azure SignalR-service vindt u in de documentatie van de Azure SignalR-service.