Reputation: 2263
I have been working on a .NET Core Web API project with a PostgreSQL database and a ReactJS front-end.
I am planning on running / deploying on Azure. I have already created a PostgreSQL instance and applied my code-first migrations to this.
The next step is deploying my Web API project to Azure... I know there is a lot of buzz around Docker containers currently and I was keen to have a play with this tech.
My question is, would I receive any benefits deploying a container VS deploying as is?
Upvotes: 0
Views: 422
Reputation: 1005
One benefit of containerization of your project can be highlighted when it comes to continues integration (CI) / continues deployment (CD).
Let’s say you have 3 environments where you need to deploy your web app, DEV(Where you develop and test), TEST(Where testers and/or the business test), PROD(Where your application is implemented and/or used). The same container that you built in DEV can be deployed to TEST and PROD. Now let’s say you’re using a code repo like TFS to store your source code. You can configure TFS so that when you check-in your code, it will build the container for you using your containers definition (dockerfile) and deploy it for you on the environment you specify. Containerization makes sure that the same code that is deployed to DEV would work the same way as the code deployed on TEST or PROD because everything that your code requires/dependent on are in the container.
CI/CD benefits on this because you can be sure that all the automation involved will produce a container that would work regardless of the environment.
Upvotes: 4