This guide provides a step by step, developer centric view of migrating legacy ASP.NET applications to Azure.
For a tool based approach using Azure Migrate: App Containerization tool, please see https://docs.microsoft.com/azure/migrate/tutorial-app-containerization-aspnet-kubernetes or https://docs.microsoft.com/azure/migrate/tutorial-app-containerization-aspnet-app-service, noting that (at the time of writing) the tooling doesn't support Apps that use Windows Authentication or have non IIS dependencies.
The application chosen for this guide is from the eShopModernizing repo. It's a DotNet Framework 4.7 Web Forms Application.
To iteratively work with the application, modernising it step by step to eventually run in a Windows 2022 container. Once containerised there will be guidance on running it in a number of Azure Container Compute services.
Code changes to the application will be minimized, and migration from DotNet Framework to DotNet is not in scope.
Step # | Title | Description |
---|---|---|
1 | Getting the app running locally | Using Visual Studio, we'll get the eShop app up and running |
2 | On a Virtual Machine | Getting the app running on an Azure VM. |
3 | SQL Database | Using SQL instead of the in-memory Database |
4 | App Service | Hosting the application in the App Service PaaS platform |
5 | Windows Containerisation | Focussing on creating a Windows Container |
6 | Windows Container Compute | Reviewing the options for running a Windows Container |
7 | Web App for Containers | Deploying the app to Web App for Containers |
8 | Kubernetes | Deploying the app to Kubernetes |
9 | Windows 2022 | Changing the base image, re-reviewing compute options |
Azure app Service Team Blog - Windows Containers Docs - Windows Containers
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.