3.8 out of 5
3.8
25 reviews on Udemy

Build Node.js apps with AWS DynamoDB & Docker containers

Build scalable apps using Node, Amazon's DynamoDB (key-value store), Docker containers & host them on with auto-scaling
Instructor:
Michael Gradek
207 students enrolled
English [Auto]
Javascript
Node
AWS
Docker
DynamoDB
Fargate
Auto-scaling

In this course you will learn how to:

  • Build a REST API using Node.js alongside the Express library

  • Persist data using AWS DynamoDB

  • You will learn how to develop using DynamoDB on your local computer before deploying your app in production

  • Containerize your app using Docker

  • Push your app to AWS Elastic Container Registry

  • Host your app using AWS Fargate & AWS Load Balancing

  • Enable auto-scaling which means AWS will take care of adding / removing compute resources to cater to demand spikes on your app

  • Point a domain name to your app so it’s easily accessible

Who is this course for?

  • Javascript beginners

  • Developers wanting to learn how to deploy apps using AWS Fargate & Load balancing

Why is JavaScript and Node so awesome?

  • Well, it’s the most used programming language in the world

  • Heaps of community support when you encounter bugs and issues

  • Loads of companies looking for JavaScript developers

Why is AWS Fargate so amazing?

  • It automatically provisions and monitors the load on our compute resources so we don’t have to

  • It auto-scales our app so meet traffic loads, and scales back to reduce costs

  • It turns a traditional app into a “serverless” one

Learning methodology:

We take a learn-by-doing approach. In a matter of minutes, you’ll have a running NodeJS Express application. Over the course of the lectures you’ll develop your very own To Do List backend application.

Introduction

1
Introduction
2
Starting point source code

Restructuring our project files

1
Start reorganising files into more logical modules
2
Separating our first controller
3
Reorganizing the rest of the controllers
4
Separate the Router logic too
5
Conclusion on reorganising our project

Local DynamoDB Setup

1
What is DynamoDB and Why use it
2
Installing NodeJS dependencies
3
Running DynamoDB on our local computer using Docker
4
Installing a visual user interface to inspect the locally hosted DynamoDB

Implementing DynamoDB

1
Setting up our connection to DynamoDB
2
What are Environment Variables and why use them
3
Finishing the DynamoDB connection configuration
4
Writing a DynamoDB client
5
What is a DynamoDB DataMapper and why use it
6
Creating a table to store our ToDo items
7
What is an Index in DynamoDB
8
Manually inserting a ToDo item into our DynamoDB
9
Creating a ToDo item Model in code
10
Inserting our first ToDo item by code
11
Debugging our DynamoDB connection
12
Introduction to JavaScript Promises
13
What are HTTP Status codes
14
Finishing up our Create ToDo controller
15
Implementing our Get ToDo's controller
16
Installing Nodemon to automatically reset our development server for us
17
Sending the ToDo's back in our responses
18
Filtering out completed ToDo's
19
Implementing the Update Todo Endpoint
20
What is Async/Await and why is it a good alternative to .then().catch()
21
Finishing the Update ToDo code
22
A better way to organise the try/catch blocks
23
Const and Let variable scopes
24
Sending a success response
25
Fixing the URL params in our router
26
Testing and DynamoDB outro
27
Adding Production Credentials to your app

Dockerizing, deploying to AWS Fargate & setting up auto-scaling

1
Dockerizing our app
2
Pushing to AWS Elastic Container Registry
3
Setting up AWS Fargate
4
Adding a Domain Name to our app
5
Setting up auto-scaling - Intro
6
Auto Scaling - Target Tracking
7
Auto Scaling - Step Scaling
You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
3.8
3.8 out of 5
25 Ratings

Detailed Rating

Stars 5
10
Stars 4
6
Stars 3
4
Stars 2
2
Stars 1
2