You are connecting to an App Service running on your Azure infrastructure from your DevBox.
Azure App Service enables you to build and host web apps, mobile backends, and RESTful APIs in the programming language of your choice without managing infrastructure. This connection between the app service and workspace would occur by setting up a bastion host that advertises the private routes to your DevZero network so you can access the private service through network tunneling. You must also set up a DNS Private Resolver to access the App Service's Private Endpoint from your DevBox.
Before you begin, follow the Connecting to Azure guide to set up the Bastion Host to access your private Azure services.
Following the above criteria, follow the Setting up DNS Private Resolver guide to access the DNS Private Zones.
To connect to an App Service running in the private subnet, please ensure it is within the same Resource Group and VNET containing the Bastion Host.
It would be best if you created a workspace so you can access the app service:
Go to DevZero Dashboard.
Navigate to the Workspaces tab and click on New workspace.
Enter the workspace name and click on Select from recipe library.
Click on New Recipe and enter the recipe name and click on Create a recipe.
Select a workspace region and click on Launch.
Navigate to Networking and open Private Endpoints page.
Click on Add > Express and then enter the name of your private endpoint.
Then select the VNET and a compatible subnet. Turn on the Integrate with private DNS zone option.
Click on Ok, and your private connection to your web app will be successfully deployed.
Follow the Below steps to access your Web App from your DevBox :
Connect to the workspace using the following command:
Copy the Default domain of the App Service you want to access.
Connect to the App Service:
If you need to make a new App Service running in a private subnet and access it through DevZero's network, then follow the below steps:
Go to Home > App Services and click on Create > Web App.
In the Basics section, select the resource group you previously selected for your VNET.
Enter the Name of the web app, choose the Publishing Model between Code, Container.
Select your Runtime Stack, Operating System, Region and then configure your Pricing Plans accordingly.
On the Container page, select your desired Image source from Quickstart images, Azure Container Registry, or Another registry.
For this guide, we will be working with Quickstart images. Then select or input the Image for your container.
In the Networking section, choose the off option under the Enable public access section.
Click on Review + Create and then click on Create.
After deploying the app, open your created service and navigate to Deployment > Deployment Center.
Select a Code Source and then enter the Organisation, Repository, and branch name. After you are done with your configuration, click on Save.
Navigate to Networking and open Private Endpoints page.
Click on Add > Express and then enter the name of your private endpoint.
Then select the VNET and a compatible subnet. Turn on the Integrate with private DNS zone option.
Click on Ok, and your private connection for your web app will be successfully deployed.
Select your Operating System, Region and then configure your Pricing Plans accordingly.
On the Deployment page, choose whether you want to enable Continuous deployment. If enabled, Enter your GitHub Repository details for your source code, such as the Organization, Repository, and Branch names.
In the Networking section, choose the off option under the Enable public access section.
Click on Review + Create and then click on Create.
After creating the web app, navigate to Networking and open the Private Endpoints page.
Click on Add > Express and then enter the name of your private endpoint.
Then select the VNET and a compatible subnet. Turn on the Integrate with private DNS zone option.
Click on Ok, and your private connection for your web app will be successfully deployed.
If you need to make a new static web App Service, then follow the below steps:
Go to Home > App Services and click on Create > Static Web App.
In the Basics section, select the resource group you previously selected for your VNET.
Enter the Web App name, and Hosting plan.
After this, choose the Source Model between GitHub, Azure Devops or Other.
Enter the Organisation, Repository, and branch name.
Click on Review + Create and click on Create.
Navigate to Networking and open Private Endpoints page.
Click on Add > Express and then enter the name of your private endpoint.
Then select the VNET and a compatible subnet. Turn on the Integrate with private DNS zone option.
Click on Ok, and your private connection for your web app will be successfully deployed.
Enter the Organisation, Project, Repository, and branch name.
Click on Review + Create and click on Create.
Navigate to Networking and open Private Endpoints page.
Click on Add > Express and then enter the name of your private endpoint.
Then select the VNET and a compatible subnet. Turn on the Integrate with private DNS zone option.
Click on Ok, and your private connection for your web app will be successfully deployed.
If you need to make a new App Service with database integration, then follow the below steps:
Go to Home > App Services and click on Create > Web App + Database.
In the Basics section, select the resource group you previously selected for your VNET.
Enter the Web App name, and Runtime stack.
After this, select the database Engine, Server name, and Database name.
If you want to, select the Azure Cache for Redis option and choose your Hosting plan.
Click on Review + Create and click on Create.
After deploying the app, open your created service and navigate to Deployment > Deployment Center.
Select a Code Source and then enter the Organisation, Repository, and branch name. After you are done with your configuration, click on Save.
Navigate to Networking and open Private Endpoints page.
Click on Add > Express and then enter the name of your private endpoint.
Then select the VNET and a compatible subnet. Turn on the Integrate with private DNS zone option.
Click on Ok, and your private connection for your web app will be successfully deployed.
It would be best if you created a workspace so you can access the app service:
Go to DevZero Dashboard.
Navigate to the Workspaces tab and click on New workspace.
Enter the workspace name and click on Select from recipe library.
Click on New Recipe and enter the recipe name and click on Create a recipe.
Select a workspace region and click on Launch.
Follow the Below steps to access your Web App from your DevBox :
Connect to the workspace using the following command:
Copy the Default domain of the App Service you want to access.
Connect to the App Service: