Tutorial: eShop on containers
Categories:
Preview
The following sample is a preview of how eShop can be deployed with Radius. As we introduce additional features to Radius we will incorporate them into this tutorial. In the meantime, there are some rough edges we have temporary workarounds for.Background
The eShop on Containers reference application is a sample .NET Core microservices application. It contains 15 services plus additional containers or cloud services for infrastructure such as SQL, Redis, Mongo, and either RabbitMQ or Service Bus.
Architecture
eShop on Containers uses a microservice oriented architecture implementation with multiple autonomous microservices (each one owning its own data/db) and implementing different approaches within each microservice (simple CRUD vs. DDD/CQRS patterns). The application uses HTTP as the communication protocol between the client apps and the microservices and supports asynchronous communication for data updates propagation across multiple services based on Integration Events and an Event Bus.
Deployment today
Deploying eShop without Radius requires deploying a cluster and the backing infrastructure, configuring multiple CLIs and tools, running deployment scripts, and manually copying/pasting credentials and endpoints.
eShop provides instructions to deploy to Azure or to deploy to an AKS cluster (and even to deploy to AKS using ARM/Bicep templates).
Once the cluster and infrastructure resources are deployed, you can deploy the eShop application using Helm charts and PowerShell.
Adding Radius
Adding Radius to the eShop on containers application allows teams to:
- Define the entire collection of microservices and backing infrastructure as a single application
- Easily manage configuration and credentials between infrastructure and services, all within the app model
- Simplify deployment with Bicep and Azure Resource Manager (ARM)
Feedback
Was this page helpful?
Glad to hear it! Please feel free to star our repo and join our Discord server to stay up to date with the project.
Sorry to hear that. If you would like to also contribute a suggestion visit and tell us how we can improve.