Skip to content

Scaling Docker for AWS


Stone River eLearning

Summary

Price
£12 inc VAT
Study method
Online
Duration
6 hours · Self-paced
Qualification
No formal qualification
Certificates
  • Certificate of completion - Free

Overview

Looking to scale your web applications with Docker? How about gaining heaps of practical knowledge about working with Amazon Web Services (AWS)?

Prepare to get excited about this course!

AWS has over a million customers, some of which are the most popular websites in the world. You can be sure that AWS will be a great fit for your web application regardless of what scale you're running at.

One awesome thing about using AWS is that a ton of companies are hiring people who have experience with it. All of the knowledge you gain from this course can be used to apply for DevOps or cloud computing positions.

The main AWS component that you'll learn about in this course is Amazon ECS, which is the Amazon EC2 Container Service. It's Amazon's take on how to manage a cluster of Docker containers.

The first section of this course will concentrate on getting familiar with AWS and then performing a deep dive on Amazon ECS where you'll learn everything there is to know about it. You'll also get familiar with Amazon ECR which is Amazon's private Docker registry.

During this deep dive there will be plenty of guided labs to get your hands dirty.

The second section of this course will be all about Dockerizing a multi-service Ruby on Rails application, as well as profiling that application with Docker and other open source tools.

If you're not a developer or have no intentions of using Ruby on Rails that's fine because you can skip the development section. The only thing you'll have to do is build the Docker image, which will be as simple as running a few commands.

The third section of this course will be taking the knowledge learned from previous sections and deploying the application to production on AWS in a fault tolerant way.

You'll learn how to calculate costs for a real life project hosted on AWS and load balance the web application so you can scale out to as many hosts as you need.

Along the way you'll learn about many other AWS resources and also learn how to hook up a domain name to a load balancer and secure it with a free SSL certificate.

This entire course is very hands on, with just enough theory to understand the main goal -- which is to get you comfortable scaling your web apps with Docker on AWS.

"Excellent teacher and great material - easy to follow and informative. I especially like the hands-on labs."

Here's what you'll get when you sign up to my course today:

  • You'll learn how to get your development environment set up to run Docker. Windows, Mac and Linux users will be able to follow along.
  • You'll learn what Amazon ECS is and how it differs from similar services.
  • You'll learn everything there is to know about Amazon ECS.
  • You'll learn how to create your own private Docker Registry with Amazon ECR.
  • You'll gain general AWS knowledge on identity and access management, security groups, EC2, S3, ELB, RDS, ElastiCache and more.
  • You'll learn how to Dockerize a Ruby on Rails web application.
  • You'll learn how to profile your applications with Docker.
  • You'll learn how to price out a project on AWS at various traffic loads.
  • You'll learn how to load balance your web application on AWS.
  • You'll learn how to wire up a custom domain to your load balanced web app.
  • You'll learn how to create and use a FREE SSL certificate.

Why is it worth using Docker?

  • Saves a ton of time and headaches when setting up development environments.
  • Easily move an application across environments or servers.
  • Removes issues such as "well, it worked on my machine!".
  • Makes developing with teams a much more pleasant experience.
  • Works on most major platforms.
  • Has amazing support on most cloud hosting providers.
  • Docker as a company is well funded and moving forward quickly.

Why is it worth using AWS?

  • Amazon's infrastructure is spread across the globe.
  • Amazon has a tremendous amount of experience operating at scale.
  • Reap the rewards of using battle hardened services.
  • Avoid having to manage the low level details of your infrastructure.
  • Many companies are hiring people with AWS experience.
  • You can try it out for free for an entire year.

What Will I Learn?

  • Learn how to Dockerize a Ruby on Rails application
  • Ability to scale and load balance a web application to many hosts
  • General AWS knowledge that you can apply outside of Docker
  • Confidence to apply for DevOps positions at software companies

Description

Class Curriculum

Welcome to the Course

Start

What Does This Course Cover? (2:16)

Preview

Dealing with Files (1:10)

Start

Dealing with Issues (1:43)

Start

All What Does This Course Cover? (2:15)

Amazon ECS Overview

Start

What is Amazon ECS? (2:42)

Start

How Does It Compare with Other Services? (2:26)

Preparation for the Hands on Labs

Start

Introduction (0:35)

Start

Setting up an Initial Course Folder (0:45)

Preview

Installing Docker (10:59)

Start

Getting Set up on AWS (8:55)

Start

Installing and Configuring the AWS CLI (8:30)

Start

Benefits of Using the AWS CLI (1:45)

Start

Creating an SSH Keypair (8:19)

Start

Creating a Security Group (7:29)

Start

Creating ECS IAM Roles (5:31)

Deep Dive with Amazon ECS

Start

Breaking down Each ECS Component (2:19)

Preview

Clusters (4:14)

Start

Container Agent (8:31)

Start

Container Instances (9:45)

Start

Task Definitions (11:46)

Start

Scheduler (7:15)

Start

Scheduling Services (9:28)

Start

Starting Tasks (5:39)

Start

Private Docker Registry (ECR) (10:44)

Start

ECS CLI (1:42)

Start

Tearing down Our Cluster (3:30)

Developing the Ruby on Rails Application

Start

Introduction (1:11)

Start

Generating a New Rails Project (6:23)

Start

Setting up a Strong Foundation (9:46)

Start

Dockerizing Your Rails Application (7:32)

Preview

Running the Application Locally (6:46)

Start

Working with the Application (5:18)

Start

Building the Demo Application (12:17)

Start

Other Web Frameworks and Custom Apps (4:39)

Preparing to Deploy Everything on AWS

Start

Introduction (1:14)

Start

Using and Configuring nginx (17:08)

Preview

Setting up an S3 Bucket (1:26)

Start

Setting up RDS for Postgres (9:44)

Start

Setting up ElastiCache for Redis (6:34)

Start

Setting up an Elastic Load Balancer (16:35)

Start

Visualizing the Application's Architecture (2:41)

Start

Profiling the Ruby on Rails Application (16:27)

Estimating AWS Costs Based on Facts

Start

Introduction (0:41)

Start

Going over the Cost Spreadsheet (5:20)

Start

Experimenting with Different Traffic Figures (3:12)

Start

Comparing Costs to Other Cloud Providers (5:45)

Start

Benefiting from Amazon's Free Tier (3:36)

Deploying Everything with Amazon ECS

Start

Introduction (0:48)

Start

Creating the Production Cluster (3:06)

Start

Creating the Private Registry Repositories (5:53)

Preview

Spinning up Multiple Container Instances (3:50)

Start

Registering the Task Definitions (15:53)

Start

Scheduling Services (10:29)

Start

Pushing Application Changes without Downtime (8:37)

Start

Automating Your Deployments with a Script (9:03)

Start

Exploring the AWS Console and Container Logs (9:11)

Domain Names and SSL

Start

Introduction (0:29)

Start

Wiring up the ELB Endpoint to a Domain Name (3:34)

Start

Creating Free SSL Certificates with Amazon ACM (5:08)

Start

Updating the Security Group to Handle SSL (1:20)

Preview

Updating the ELB to Handle SSL (3:27)

Start

Updating nginx to Handle SSL (6:38)

Where to Go Next?

Start

Congrats on Finishing the Course (1:17)

Start

Learn More about AWS (1:48)

Who is this course for?

  • Anyone who wants to learn how to scale Docker on AWS
  • Anyone who wants to deploy a web application in an automated way
  • Anyone who wants to scale their web application to multiple servers
  • Anyone who wants to further their career by improving their DevOps skills

Requirements

  • A computer running Windows, OSX or Linux
  • A very basic understanding of Docker

Career path

Web Services

Questions and answers

Currently there are no Q&As for this course. Be the first to ask a question.

Certificates

Certificate of completion

Digital certificate - Included

Reviews

Currently there are no reviews for this course. Be the first to leave a review.

FAQs

Study method describes the format in which the course will be delivered. At Reed Courses, courses are delivered in a number of ways, including online courses, where the course content can be accessed online remotely, and classroom courses, where courses are delivered in person at a classroom venue.

CPD stands for Continuing Professional Development. If you work in certain professions or for certain companies, your employer may require you to complete a number of CPD hours or points, per year. You can find a range of CPD courses on Reed Courses, many of which can be completed online.

A regulated qualification is delivered by a learning institution which is regulated by a government body. In England, the government body which regulates courses is Ofqual. Ofqual regulated qualifications sit on the Regulated Qualifications Framework (RQF), which can help students understand how different qualifications in different fields compare to each other. The framework also helps students to understand what qualifications they need to progress towards a higher learning goal, such as a university degree or equivalent higher education award.

An endorsed course is a skills based course which has been checked over and approved by an independent awarding body. Endorsed courses are not regulated so do not result in a qualification - however, the student can usually purchase a certificate showing the awarding body's logo if they wish. Certain awarding bodies - such as Quality Licence Scheme and TQUK - have developed endorsement schemes as a way to help students select the best skills based courses for them.