Interested in a private company training? Request it here.
As your application matures, you might encounter some growing pains, this is a good sign you might want to step away from a monolithic approach. Distributed applications leverage the power of multiple computing resources to provide a more robust, scalable, and efficient system.
What is this Container-thing developers are talking about? And why should you use it? In this module you will get an overview of what containers are, and how to use them on Windows and Linux.
A container needs to be hosted and run on a container runtime. Several options are available like Podman, containerD, ... In this course, our emphasis will be on the most widely used one: Docker. You will learn how to create, run, and scale containers using Docker.
Now that you understand what a container is, the next question is: how do you package your applications into containers? In this module, you'll learn how to Dockerize your ASP.NET applications, and how to run and debug them.
Aspire is designed to simplify the development of distributed, observable, and production-ready applications using .NET. It provides a set of tools, libraries, and templates that streamline the process of building applications, particularly those that are cloud-native, meaning they are optimized to run in cloud environments.
Now that you know how Aspire can tie the parts of your application together, why not add some useful resources like a cache, a database, or basically any container you want?
In this module, you will learn how to make synchronous communication more reliable by using a number of patterns.
In this module, you will learn what event-based communication is and when to use it.
Modern cloud deployment relies on a "build once, run anywhere" philosophy. This chapter covers the essential tools for taking containers to production: from storing versioned images in Azure Container Registry to deploying them across diverse hosting environments. We explore how to use the .NET Aspire manifest to generate deployment-ready configurations while introducing the services that power your live applications, such as Azure Container Apps and Kubernetes.
Modern applications are inherently distributed, ranging from monoliths communicating with a message queue or database to complex microservices. This course demonstrates how Aspire and containers revolutionize the local workflow by emulating dependencies directly on the developer's machine, eliminating manual setup and reducing developer onboarding from days to minutes.
Additionally, participants will learn to orchestrate multi-project solutions using the Aspire AppHost, applying service discovery, robust resilience patterns and asynchronous communication strategies. Finally, participants will learn how to streamline deployment to production environments like Azure Container Apps and Kubernetes through the Aspire CLI and Manifest.
This course is designed for experienced .NET developers and software architects who are looking to modernize their skillset.
It is ideal for developers who want to master the complexities of containerization and cloud-native patterns without getting bogged down in infrastructure boilerplate.