Deploying a .NET Core + Angular SPA with Docker and GitLab

Viewed 229

I have a droplet in Digital Ocean with Ubuntu 20.04 and a .NET Core web application that connects to Mongo.

My deployment workflow is the following:

  • I work locally with Visual Studio and release my app to a folder.

  • Then I connect to my server through FTP and drag the content of my folder to /var/www/myapp

  • Secrets are managed by Azure (it took me a lot of time to set this up).

  • A service runs the app and restarts it if needed.

  • The web server is Nginx

Everything works fine, nothing new so far. However, I'd like to automate each deployment and I found GitLab can run a pipeline to help me achieve that. The problem is I don't understand how to set this up correctly since I've seen there are more partes involved, such as Docker and Kubernetes, and I feel a bit overwhelmed.

Do I need to "dockerize" my application, database, etc.? If I want to add Angular as the client side, do I need to dockerize it as well or it goes in the same container as the .NET Core app?

Do I need Kubernetes? If so, why?

What would be the most straightforward and recommended way of achieving a CI/CD for my app?

It took me a lot of effort to deploy to my Linux server and I'm afraid I can destroy something in production.

I would really appreciate any help.

0 Answers
Related