Docker Architecture for ServiceStack

I am wondering if anyone with a big brain has managed to handle this.

I have an application in which each client has a separate webapp in Azure. This is Asp.net MVC with a separate virtual directory in which ServiceStack is stored. MVC is not actually used, the application works 99% with ServiceStack.

The architecture works great, but as we get more customers, we have to manage more and more azure webapps. Although we can live with it, the Containers world is on us, and now that ServiceStack supports the .net core, I have a utopian view of deploying hundreds of containers, and every request for any of my tenants can go to any container and if necessary.

I think I have developed most ways to reorganize all the elements, but there is one architectural bit that I cannot solve.

This is a reasonably common requirement for our client to "try" a new feature or version before any other customers, as they help to develop this feature. There are many containers in the world on several virtual machines served by the nginx container (or something else?) On each virtual machine, how can you control the routing of requests to specific versioned containers so that you do not have to redistribute the nginx container (or downtime ) when changing routing - for example, Can nginx ask for a config-based route in Redis?

Any recommendations / pointers are greatly appreciated.

WITH

+4
2

Azure, ServiceStack.NET Core Docker Amazon EC2 Container , nginx jocker/nginx-proxy Docker App nginx .NET Core Docker.

jwilder/nginx-proxy AWS Docker, , .

nginx-proxy - , , Docker - nginx, Docker , . AWS , ECS, Auto Scaling, AWS .

Azure mangaging Docker Instances Azure Container Service, Azure acs.

+2

. nodejs. - .

2 , URL: 1 , . , URL- , , WebApp.

, , ORM . (, , )

+2

Source: https://habr.com/ru/post/1661500/


All Articles