Section 1 : Dive Into Docker!
|
Lecture 1 | Finished Code and Diagrams | |
|
Lecture 2 | Why Use Docker | 00:03:44 Duration |
|
Lecture 3 | What is Docker | 00:02:53 Duration |
|
Lecture 4 | Docker for MacWindows | 00:01:57 Duration |
|
Lecture 5 | Installing Docker on MacOS | 00:04:45 Duration |
|
Lecture 6 | Installing Docker for Windows Home users | |
|
Lecture 7 | Installing Docker for Windows Profressional | 00:02:03 Duration |
|
Lecture 8 | More Windows Professional Setup | 00:00:40 Duration |
|
Lecture 9 | One Last Piece of Windows Professional Setup | 00:01:09 Duration |
|
Lecture 10 | Installing Docker on Linux | |
|
Lecture 11 | Using the Docker Client | 00:05:03 Duration |
|
Lecture 12 | But Really...What's a Container | 00:08:30 Duration |
|
Lecture 13 | How's Docker Running on Your Computer | 00:02:44 Duration |
Section 2 : Manipulating Containers with the Docker Client
|
Lecture 1 | Docker Run in Detail | 00:01:54 Duration |
|
Lecture 2 | Overriding Default Commands | |
|
Lecture 3 | Listing Running Containers | 00:04:09 Duration |
|
Lecture 4 | Container Lifecycle | 00:05:17 Duration |
|
Lecture 5 | Restarting Stopped Containers | 00:01:39 Duration |
|
Lecture 6 | Removing Stopped Containers | 00:01:39 Duration |
|
Lecture 7 | Retrieving Log Outputs | 00:02:34 Duration |
|
Lecture 8 | Stopping Containers | 00:05:21 Duration |
|
Lecture 9 | Multi-Command Containers | 00:04:16 Duration |
|
Lecture 10 | Executing Commands in Running Containers | 00:02:53 Duration |
|
Lecture 11 | The Purpose of the IT Flag | 00:04:35 Duration |
|
Lecture 12 | Getting a Command Prompt in a Container | 00:04:07 Duration |
|
Lecture 13 | Starting with a Shell | 00:02:14 Duration |
|
Lecture 14 | Container Isolation | 00:03:09 Duration |
Section 3 : Building Custom Images Through Docker Server
|
Lecture 1 | Creating Docker Images | 00:02:37 Duration |
|
Lecture 2 | Buildkit for Docker Desktop v2.4.0+ and Edge | |
|
Lecture 3 | Building a Dockerfile | 00:04:51 Duration |
|
Lecture 4 | Dockerfile Teardown | 00:02:41 Duration |
|
Lecture 5 | What's a Base Image | 00:05:41 Duration |
|
Lecture 6 | The Build Process in Detail | 00:11:09 Duration |
|
Lecture 7 | A Brief Recap | 00:03:25 Duration |
|
Lecture 8 | Rebuilds with Cache | 00:07:02 Duration |
|
Lecture 9 | Tagging an Image | 00:04:27 Duration |
|
Lecture 10 | Quick Note for Windows Users | |
|
Lecture 11 | Manual Image Generation with Docker Commit | 00:05:01 Duration |
Section 4 : Making Real Projects with Docker
|
Lecture 1 | Project Outline | 00:02:35 Duration |
|
Lecture 2 | Node Server Setup | 00:05:04 Duration |
|
Lecture 3 | A Few Planned Errors | 00:05:13 Duration |
|
Lecture 4 | Resolving npm ERR! could not detect node name | |
|
Lecture 5 | Base Image Issues | 00:07:51 Duration |
|
Lecture 6 | A Few Missing Files | 00:03:18 Duration |
|
Lecture 7 | Copying Build Files | 00:04:51 Duration |
|
Lecture 8 | Reminder for Windows Home Docker Toolbox | |
|
Lecture 9 | Container Port Mapping | 00:07:27 Duration |
|
Lecture 10 | Specifying a Working Directory | |
|
Lecture 11 | Unnecessary Rebuilds | 00:04:16 Duration |
|
Lecture 12 | Minimizing Cache Busting and Rebuilds | 00:04:59 Duration |
Section 5 : Docker Compose with Multiple Local Containers
|
Lecture 1 | App Overview | 00:03:57 Duration |
|
Lecture 2 | App Server Starter Code | 00:06:43 Duration |
|
Lecture 3 | Assembling a Dockerfile | 00:03:12 Duration |
|
Lecture 4 | Introducing Docker Compose | 00:05:32 Duration |
|
Lecture 5 | Docker Compose Files | 00:06:02 Duration |
|
Lecture 6 | Networking with Docker Compose | 00:05:01 Duration |
|
Lecture 7 | Docker Compose Commands | 00:04:39 Duration |
|
Lecture 8 | Stopping Docker Compose Containers | 00:02:34 Duration |
|
Lecture 9 | Container Maintenance with Compose | 00:02:54 Duration |
|
Lecture 10 | Automatic Container Restarts | 00:09:21 Duration |
|
Lecture 11 | Container Status with Docker Compose | 00:02:21 Duration |
Section 6 : Creating a Production-Grade Workflow
|
Lecture 1 | Development Workflow | 00:01:28 Duration |
|
Lecture 2 | Flow Specifics | 00:06:32 Duration |
|
Lecture 3 | Docker's Purpose | 00:01:50 Duration |
|
Lecture 4 | Project Generation | 00:03:26 Duration |
|
Lecture 5 | Create React App Generation | |
|
Lecture 6 | More on Project Generation | 00:01:45 Duration |
|
Lecture 7 | Necessary Commands | 00:05:10 Duration |
|
Lecture 8 | Creating the Dev Dockerfile | 00:03:42 Duration |
|
Lecture 9 | Duplicating Dependencies | 00:01:29 Duration |
|
Lecture 10 | React App Exits Immediately with Docker Run Co | |
|
Lecture 11 | Starting the Container | 00:02:50 Duration |
|
Lecture 12 | Docker Volumes | 00:06:53 Duration |
|
Lecture 13 | Windows not Detecting Changes - Update | |
|
Lecture 14 | Bookmarking Volumes | 00:04:51 Duration |
|
Lecture 15 | React App Exited With Code 0 | |
|
Lecture 16 | Shorthand with Docker Compose | 00:04:22 Duration |
|
Lecture 17 | Overriding Dockerfile Selection | 00:02:03 Duration |
|
Lecture 18 | Windows not Detecting Changes - Docker Compose | |
|
Lecture 19 | Do We Need | 00:02:51 Duration |
|
Lecture 20 | Executing Tests | 00:03:39 Duration |
|
Lecture 21 | Live Updating Tests | 00:04:54 Duration |
|
Lecture 22 | Docker Compose for Running Tests | 00:05:46 Duration |
|
Lecture 23 | Tests Not Re-running on Windows | |
|
Lecture 24 | Attaching to Web container | |
|
Lecture 25 | Shortcomings on Testing | 00:08:31 Duration |
|
Lecture 26 | Need for Nginx | 00:03:07 Duration |
|
Lecture 27 | Multi-Step Docker Builds | 00:06:54 Duration |
|
Lecture 28 | Named Builders and AWS | |
|
Lecture 29 | Implementing Multi-Step Builds | 00:07:05 Duration |
|
Lecture 30 | Running Nginx | 00:02:28 Duration |
Section 7 : Continuous Integration and Deployment with AWS
Section 8 : Building a Multi-Container Application
|
Lecture 1 | Single Container Deployment Issues | 00:03:03 Duration |
|
Lecture 2 | Application Overview | 00:04:31 Duration |
|
Lecture 3 | A Quick Note | |
|
Lecture 4 | Application Architecture | 00:05:11 Duration |
|
Lecture 5 | Worker Process Setup | 00:11:42 Duration |
|
Lecture 6 | Important note about PG module version | |
|
Lecture 7 | Express API Setup | 00:05:20 Duration |
|
Lecture 8 | Important Update for Table Query | |
|
Lecture 9 | Connecting to Postgres | 00:07:37 Duration |
|
Lecture 10 | More Express API Setup | 00:12:20 Duration |
|
Lecture 11 | Create React App Generation | |
|
Lecture 12 | Generating the React App | 00:01:51 Duration |
|
Lecture 13 | Fetching Data in the React App | 00:06:32 Duration |
|
Lecture 14 | Rendering Logic in the App | 00:08:29 Duration |
|
Lecture 15 | Exporting the Fib Class | 00:00:27 Duration |
|
Lecture 16 | Routing in the React App | 00:04:36 Duration |
Section 9 : Dockerizing Multiple Services
Section 10 : A Continuous Integration Workflow for Multiple I
|
Lecture 1 | Production Multi-Container Deployments | 00:05:40 Duration |
|
Lecture 2 | Important Node Image Version Update | |
|
Lecture 3 | Production Dockerfiles | 00:06:05 Duration |
|
Lecture 4 | Multiple Nginx Instances | 00:05:23 Duration |
|
Lecture 5 | Nginx fix for React Router | |
|
Lecture 6 | Altering Nginx's Listen Port | 00:04:53 Duration |
|
Lecture 7 | Cleaning Up Tests | 00:01:11 Duration |
|
Lecture 8 | Github and Travis CI Setup | 00:04:08 Duration |
|
Lecture 9 | Fix for Failing Travis Builds | |
|
Lecture 10 | Travis Configuration Setup | 00:08:46 Duration |
|
Lecture 11 | Pushing Images to Docker Hub | 00:07:35 Duration |
|
Lecture 12 | Successful Image Building | 00:01:50 Duration |
Section 11 : Multi-Container Deployments to AWS
Section 12 : Onwards to Kubernetes!
|
Lecture 1 | The Why's and What's of Kubernetes | 00:08:07 Duration |
|
Lecture 2 | Kubernetes in Development and Production | 00:05:47 Duration |
|
Lecture 3 | Updated Minikube Install and Setup Info - mac | |
|
Lecture 4 | Minikube Setup on MacOS | 00:05:36 Duration |
|
Lecture 5 | Minikube Setup on Windows Pro | |
|
Lecture 6 | Minikube Setup on Windows Home | |
|
Lecture 7 | Minikube Setup on Linux | |
|
Lecture 8 | Docker Desktop's Kubernetes instead of Miniku | |
|
Lecture 9 | Mapping Existing Knowledge | 00:07:37 Duration |
|
Lecture 10 | Quick Note to Prevent an Error | |
|
Lecture 11 | Adding Configuration Files | 00:06:52 Duration |
|
Lecture 12 | Object Types and API Versions | 00:06:55 Duration |
|
Lecture 13 | Running Containers in Pods | 00:09:19 Duration |
|
Lecture 14 | Service Config Files in Depth | 00:13:38 Duration |
|
Lecture 15 | Connecting to Running Containers | 00:10:25 Duration |
|
Lecture 16 | The Entire Deployment Flow | 00:13:03 Duration |
|
Lecture 17 | Imperative vs Declarative Deployments | 00:13:36 Duration |
Section 13 : Maintaining Sets of Containers with Deployments
Section 14 : A Multi-Container App with Kubernetes
Section 15 : Handling Traffic with Ingress Controllers
|
Lecture 1 | Load Balancer Services | 00:04:15 Duration |
|
Lecture 2 | A Quick Note on Ingresses | 00:03:33 Duration |
|
Lecture 3 | One Other Quick Note! | 00:01:37 Duration |
|
Lecture 4 | Behind the Scenes of Ingress | 00:05:17 Duration |
|
Lecture 5 | More Behind the Scenes of Ingress | 00:06:38 Duration |
|
Lecture 6 | Optional Reading on Ingress Nginx | |
|
Lecture 7 | Docker Driver and Ingress - IMPORTANT | |
|
Lecture 8 | Update on Mandatory Commands | |
|
Lecture 9 | Setting up Ingress Locally with Minikube | 00:06:21 Duration |
|
Lecture 10 | Setting up Ingress with Docker Desktop's Kube | |
|
Lecture 11 | Ingress Update this.state.seenIndexes.map is | |
|
Lecture 12 | Creating the Ingress Configuratio | 00:07:01 Duration |
|
Lecture 13 | Testing Ingress Locally | 00:02:50 Duration |
|
Lecture 14 | Indexes I Have Seen is Empty | |
|
Lecture 15 | The Minikube Dashboard | 00:03:28 Duration |
|
Lecture 16 | Docker Desktop's Kubernetes Dashboard |
Section 16 : Kubernetes Production Deployment
Section 17 : HTTPS Setup with Kubernetes
|
Lecture 1 | HTTPS Setup Overview | 00:05:35 Duration |
|
Lecture 2 | Domain Purchase | 00:02:17 Duration |
|
Lecture 3 | Domain Name Setup | 00:03:31 Duration |
|
Lecture 4 | Fix for Cert Manager Breaking Changes | |
|
Lecture 5 | Cert Manager Install | 00:01:57 Duration |
|
Lecture 6 | How to Wire Up Cert Manager | 00:05:58 Duration |
|
Lecture 7 | Issuer Config File | 00:05:07 Duration |
|
Lecture 8 | Certificate Config File | 00:05:18 Duration |
|
Lecture 9 | Deploying Changes | 00:03:15 Duration |
|
Lecture 10 | Verifying the Certificate | 00:03:55 Duration |
|
Lecture 11 | Ingress Config for HTTPS | 00:06:50 Duration |
|
Lecture 12 | It Worked! | 00:02:52 Duration |
|
Lecture 13 | Google Cloud Cleanup | |
|
Lecture 14 | Local Environment Cleanup |
Section 18 : Local Development with Skaffold
|
Lecture 1 | Awkward Local Development | 00:03:53 Duration |
|
Lecture 2 | Installing Skaffold | 00:01:58 Duration |
|
Lecture 3 | The Skaffold Config File | 00:06:42 Duration |
|
Lecture 4 | Live Sync Changes | 00:05:02 Duration |
|
Lecture 5 | Automatic Shutdown | 00:05:06 Duration |
|
Lecture 6 | Testing Live Sync with the API Server | 00:05:28 Duration |