> In this document, you'll learn how to create and deploy your first abp web app to [Azure App Service](https://docs.microsoft.com/en-us/azure/app-service/overview). The App Service supports various versions of .NET apps, and provides a highly scalable, self-patching web hosting service. Abp web apps are cross-platform and can be hosted on Linux and Windows.
In this document, you will learn how to create and deploy your first ABP web app to [Azure App Service](https://docs.microsoft.com/en-us/azure/app-service/overview). The App Service supports various versions of .NET apps, and provides a highly scalable, self-patching web hosting service. ABP web apps are cross-platform and can be hosted on Linux, Windows or MacOS.
****Prerequisites****
- An Azure account with an active subscription.[Create an account for free](https://azure.microsoft.com/free/dotnet).
- A GitHub account[Create an account for free](http://github.com/).
- An Azure account with an active subscription.[Create an account for free](https://azure.microsoft.com/free/dotnet).
- A GitHub account[Create an account for free](http://github.com/).
## Create a new ABP Framework application
Create a repository on [GitHub.com](https://github.com/) (keep all the default settings)
## Creating a new ABP application
Create a repository on [GitHub.com](https://github.com/) (keep all settings as default).
Open the command prompt and clone the repository into a folder on your computer
Open the command prompt in the*GitHub repository folder* and create a *new abp Blazor solution* with the command below
Open the command prompt in the*GitHub repository folder* and create a new ABP Blazor solution with the command below:
```bash
abp new YourAppName -u blazor
```
Open the command prompt in the *[YourAppName].DbMigrator* project and enter the command below to apply the database migrations
## Running the application
Open the command prompt in the *[YourAppName].DbMigrator* project and enter the command below to apply the database migrations:
```bash
dotnet run
```
Open the command prompt in the*[YourAppName].HttpApi.Host* project to run the API project
Open the command prompt in the*[YourAppName].HttpApi.Host* project to run the API project:
```bash
dotnet run
```
Navigate to the*applicationUrl* specified in *the launchSettings.json* file of the *[YourAppName].HttpApi.Host project*. You should get the *Swagger window*
Navigate to the*applicationUrl* specified in *the launchSettings.json* file of the *[YourAppName].HttpApi.Host project*. You should get the *Swagger window*
Open the command prompt in the*[YourAppName].Blazor*folder and enter the command below to run the Blazor project
Open the command prompt in the*[YourAppName].Blazor*folder and enter the command below to run the Blazor project:
```bash
dotnet run
```
Navigate to the *applicationUrl* specified in the *launchSettings.json* file of the *[YourAppName].Blazor* project. You should get the *ABP Framework Welcome window*
Navigate to the *applicationUrl* specified in the *launchSettings.json* file of the *[YourAppName].Blazor* project and you should see the landing page.
Stop both the *API* and the *Blazor* project by pressing **CTRL+C**
Stop both the *API* and the *Blazor* project by pressing **CTRL+C**
Before the github commit, you have to delete "**/wwwroot/libs/*" at *.gitignore* file.
## Committing to GitHub
Before the GitHub commit, you have to delete the line "**/wwwroot/libs/*" at *.gitignore* file.

Open the command prompt in the root folder of your project and*add, commit and push* all your changes to your GitHub repository
Open the command prompt in the root folder of your project and*add, commit and push* all your changes to your GitHub repository:
```bash
git add .
@ -70,33 +82,36 @@ git push
```
## Create a SQL Database on Azure and change the connection string in the appsettings.json files
* Login into [Azure Portal](https://portal.azure.com/)
## Configuring Azure database connection string
Create a SQL database on Azure and change the connection string in all the *appsettings.json* files.
* Login into [Azure Portal](https://portal.azure.com/)
* Click **Create a resource**
* Click**Create a resource**
* Search for *SQL Database*
* Search for*SQL Database*
* Click the**Create** button in the *SQL Database window*
* Click the**Create** button in the *SQL Database window*
* Create a new resource group. Name it*rg[YourAppName]*
* Create a new resource group. Name it*rg[YourAppName]*
* Enter*[YourAppName]Db*as database name
* Enter*[YourAppName]Db*as database name
* Create a new Server and name it*[yourappname]server*
* Create a new Server and name it*[yourappname]server*
* Enter a serveradmin login and passwords. Click the**OK**button
* Enter a serveradmin login and passwords. Click the**OK**button
* Select your*Location*
* Select your*Location*
* Check*Allow Azure services to access server*
* Check*Allow Azure services to access server*
* Click**Configure database**. Go to the *Basic* version and click the **Apply**button
* Click**Configure database**. Go to the *Basic* version and click the **Apply**button
* Set the toggle to**Enabled** in the the *Continuous deployment trigger*window
* Set the toggle to**Enabled** in the the *Continuous deployment trigger*window
* Click**+ Add** in *No filters added*. Select **Include** in the *Type* dropdown. Select your branch in the *Build branch* dropdown and close the window
* Click**+ Add** in *No filters added*. Select **Include** in the *Type* dropdown. Select your branch in the *Build branch* dropdown and close the window

* Click**the little red circle with the exclamation mark** in the *Tasks*tab menu
* Click**the little red circle with the exclamation mark** in the *Tasks*tab menu
* Select your subscription in the*Azure subscription*dropdown.
* Select your subscription in the*Azure subscription*dropdown.

* Click**Authorize**and enter your credentials in the next screens
* Click**Authorize**and enter your credentials in the next screens
* After Authorization, select the**[YourAppName]API** in the *App service name*dropdown
* After Authorization, select the**[YourAppName]API** in the *App service name*dropdown
* Click the**Deploy Azure App Service**task
* Click the**Deploy Azure App Service**task
* Select**[YourAppName].HttpApi.Host.zip** in the *Package or folder*input field
* Select**[YourAppName].HttpApi.Host.zip** in the *Package or folder*input field

* Click the**Save** icon in the top menu and click **OK**
* Click the**Save** icon in the top menu and click **OK**
* Click**Create release** in the top menu. Click **Create** to create a release
* Click**Create release** in the top menu. Click **Create** to create a release
* Click the*Pipeline*tab and wait until the Deployment succeeds
* Click the*Pipeline*tab and wait until the Deployment succeeds