Een App Service-app verbinden met SQL Database met behulp van CLI

Met dit voorbeeldscript maakt u een database in Azure SQL Database en een App Service-app. Vervolgens wordt de database aan de app gekoppeld met behulp van app-instellingen.

Als u geen Azure-abonnement hebt, maakt u een gratis Azure-account voordat u begint.

Vereisten

Voorbeeldscript

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 het Cloud Shell en druk op Enter om deze uit te voeren.

Aanmelden bij Azure

Cloud Shell automatisch wordt geverifieerd onder het initiële account waarmee is aangemeld. Gebruik het volgende script om u aan te melden met een ander abonnement, waarbij u uw Azure-abonnements-id <Subscription ID> vervangt. Als u geen Azure-abonnement hebt, maakt u een gratis Azure-account 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

Het script uitvoeren

# Connect an App Service app to SQL Database
# set -e # exit if error
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-app-service-rg-$randomIdentifier"
tag="connect-to-sql.sh"
appServicePlan="msdocs-app-service-plan-$randomIdentifier"
webapp="msdocs-web-app-$randomIdentifier"
server="msdocs-azuresql-$randomIdentifier"
database="msdocsazuresqldb$randomIdentifier"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
startIp="0.0.0.0"
endIp="0.0.0.0"

# Create a resource group.
echo "Creating $resourceGroup in "$location"..."
az group create --name $resourceGroup --location "$location" --tag $tag

# Create an App Service Plan
echo "Creating $appServicePlan"
az appservice plan create --name $appServicePlan --resource-group $resourceGroup \
--location "$location"

# Create a Web App
echo "Creating $webapp"
az webapp create --name $webapp --plan $appServicePlan --resource-group $resourceGroup 

# Create a SQL Database server
echo "Creating $server"
az sql server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password

# Configure firewall for Azure access
echo "Creating firewall rule with starting ip of $startIp" and ending ip of $endIp
az sql server firewall-rule create \
--server $server \
--resource-group $resourceGroup \
--name AllowYourIp \
--start-ip-address $startIp --end-ip-address $endIp

# Create a database called 'MySampleDatabase' on server
echo "Creating $database"
az sql db create --server $server \
 --resource-group $resourceGroup --name $database \
--service-objective S0

# Get connection string for the database
connstring=$(az sql db show-connection-string --name $database --server $server \
--client ado.net --output tsv)

# Add credentials to connection string
connstring=${connstring//<username>/$login}
connstring=${connstring//<password>/$password}

# Assign the connection string to an app setting in the web app
az webapp config appsettings set --name $webapp \
--resource-group $resourceGroup \
--settings "SQLSRV_CONNSTR=$connstring"

Resources opschonen

Gebruik de volgende opdracht om de resourcegroep en alle resources die eraan zijn gekoppeld te verwijderen met behulp van de opdracht az group delete , tenzij u deze resources voortdurend nodig hebt. Het kan even duren voordat een aantal van deze resources is gemaakt en dat deze kunnen worden verwijderd.

az group delete --name $resourceGroup

Voorbeeldverwijzing

Dit script gebruikt de volgende opdrachten voor het maken van een resourcegroep, App Service-app, SQL Database en alle gerelateerde resources. Elke opdracht in de tabel is een koppeling naar specifieke documentatie over de opdracht.

Opdracht Opmerkingen
az group create Hiermee maakt u een resourcegroep waarin alle resources worden opgeslagen.
az appservice plan create Hiermee maakt u een App Service-plan.
az webapp create Hiermee maakt u een App Service-app.
az sql server create Hiermee maakt u een server.
az sql db create Hiermee maakt u een nieuwe database.
az sql db show-connection-string Hiermee genereert u een verbindingsreeks voor een database.
az webapp config appsettings set Hiermee kunt u een app-instelling voor een App Service-app maken of bijwerken. App-instellingen worden weergegeven als omgevingsvariabelen voor uw app.

Volgende stappen

Raadpleeg de documentatie van Azure CLI voor meer informatie over de Azure CLI.

Meer voorbeelden van App Service CLI-scripts vindt u in de documentatie van Azure App Service.