Deploy Dockerized .NET 6 on AWS with EC2

Поделиться
HTML-код
  • Опубликовано: 30 июн 2024
  • In this video, we're going to deploy our Dockerized .NET 6 web API to AWS! We'll create a new VPC, set up subnets in multiple availability zones, and load balance traffic to our web servers using an Application Load Balancer. We'll look at pushing and pulling images from Amazon ECR, setting up security groups and IAM roles, and basic health check monitoring.
    This video is sponsored by AWS.
    This video is for educational purposes only. Be sure to stop and deallocate any resources that you provision during this walkthrough, , including the Elastic IP, Application Load Balancer, and your EC2 instances!
    • 🤝 Become a Patron of the Channel!
    Patreon supporters get access to source code from all episodes!
    / productivedev
    • 👋 Get in Touch!
    ► Facebook bit.ly/productive-dev-fb
    ​​► LinkedIn bit.ly/wesd-linkedin
    ​​► Twitter bit.ly/wesd-twitter
    ​​• 🧑🏽‍💻 Udemy Courses
    ► Udemy bit.ly/wesd-udemy
    • 🕘 Timestamps
    0:00 - Intro
    0:40 - Sneak Peak of End Result
    1:00 - Overview of Concepts
    4:15 - Allocating a new Elastic IP
    6:17 - Setting up a new VPC
    7:10 - Public and Private Subnets, CIDR
    14:26 - Increasing Availability with additional Subnets
    18:50 - Creating an Application Load Balancer
    23:59 - Creating a Jump Server in EC2
    28:35 - Creating a Web Server in EC2
    31:00 - Setting up SSH Config (terminal)
    34:50 - Connecting to EC2 from the terminal
    36:30 - Installing Docker on Linux
    39:40 - Creating an Amazon ECR Repository
    46:11 - Pushing Docker image to ECR
    50:00 - Creating an IAM Role for ECR
    54:13 - Pulling Docker image from ECR
    55:16 - Updating Load Balancer Target Group
    58:20 - Create EC2 AMI of our Web Server
    59:25 - Update Load Balancer Security Group
    1:01:01 - Testing API in Browser
    1:02:00 - Adding a Second EC2 instance to our Target Group
    1:05:30 - Final Demo
    1:08:35 - Removing Demo Resources
    • 📚 Topics Covered in This Video
    ► .NET 6
    ► AWS
    ► Amazon EC2
    ► High Availability
    ► Amazon ECR
    ► Security Groups
    ► Elastic IP
    ► CIDR Notation
    ► NAT Gateway
    ► Virtual Private Cloud (VPC)
    ► DevOps
    ► Dockerizing .NET
    ► .NET Health Check
    ► Cloud Native
    ► Web API Development
  • НаукаНаука

Комментарии • 17

  • @WesDoyle
    @WesDoyle  2 года назад +13

    Starting a deep dive into .NET on AWS! What topics would you like to see next?

    • @gga-wh5du
      @gga-wh5du 2 года назад

      Eks please

    • @sPPeecT
      @sPPeecT Год назад

      could you go ahead and show how to install https

  • @KanagawaMarcos
    @KanagawaMarcos 4 месяца назад

    Amazing tutorial

  • @2005Azm
    @2005Azm 2 года назад +1

    Wonderful !

  • @xxx.xxx.xxx.xx1joker706
    @xxx.xxx.xxx.xx1joker706 2 года назад +5

    IoT Core + TimeStream, .NET Lambdas, Blazor Website hosted calling Web APIs hosted as well, Redis, ... (All what we can do in .NET with AWS).

  • @ghostslinger3148
    @ghostslinger3148 2 года назад +1

    Hi Wes, outstanding video always informative and take into account best practices.
    I'm pretty new to AWS, If I only want to deploy .NET 6 web API to AWS CICD pipeline with docker, serverless architecture with some web security.
    Is it a totally different procedure to this one?

    • @WesDoyle
      @WesDoyle  2 года назад +1

      Hey! There is a lot to unpack with this (multiple layers and types of security, different ways to automate CI / CD, different 'serverless'' solutions), and several reasonable paths to consider. I'll do my best this year to cover as much as possible!

  • @ramchandrathakkar2022
    @ramchandrathakkar2022 2 года назад +1

    Awesome very informative, but I have a one quesiton and its how we can push updated docker image into our app demo server automatically. Thanking you if you can make a video on this also.

    • @WesDoyle
      @WesDoyle  2 года назад +2

      i have lots of continuous deployment content coming soon! thanks for watching

    • @ramchandrathakkar2022
      @ramchandrathakkar2022 2 года назад

      @@WesDoyle sounds great. Waiting for new content to come.

  • @parapadirapa
    @parapadirapa 2 года назад +1

    Wes, I'm curious about something: When you deploy to Azure, you can update a .Net solution monolith's dll projects in a modular fashion (only the projects that changed are affected) AND you can scale the solution's corresponding AppService in Azure vertically and horizontally as per your requirements (or have it scale automatically). This was what my senior developer said when I asked why we were not dockerizing everything and working stricly with microservices. What's your (or anyone's) take on this? It seems that all of the docker benefits get covered by Azure and this simplifies the process greatly. I apologize for the question not relating to AWS, but I felt it was relevant, as simply publishing seems way more practical than dockerizing everything...

    • @WesDoyle
      @WesDoyle  2 года назад +1

      Hi Gustavo, thanks for the comment! It sounds like you and your team have a solution that works well for the software you're delivering. The types of considerations you're mentioning come down to what works best for the team, as a function of the business needs for the customer, specific skillsets, and available resources. It would be unwise to migrate to a microservices architecture without a deep consideration of all of the implications. Would recommend the first two chapters of Sam Newman's great book "Monolith to Microservices" which discuss this topic (specifically the what and why) in more detail.

  • @marvelous7638
    @marvelous7638 5 месяцев назад

    why my health check still unhealthy although i have followed correct step. The security group have inbound rule port range 5000-5001

  • @sunnysinha7936
    @sunnysinha7936 5 месяцев назад

    Where is episode 1 and 2 ? Pls can u share the link pls

  • @bartdiako1
    @bartdiako1 11 месяцев назад

    links to episodes one and two. please , thank you