Section 1 : Dive Into Docker!

Lecture 1 Finished Code and Diagrams Text
Lecture 2 Why Use Docker 3:44
Lecture 3 What is Docker 2:53
Lecture 4 Docker for MacWindows 1:57
Lecture 5 Installing Docker on MacOS 4:45
Lecture 6 Installing Docker for Windows Home users Text
Lecture 7 Installing Docker for Windows Profressional 2:3
Lecture 8 More Windows Professional Setup 0:40
Lecture 9 One Last Piece of Windows Professional Setup 1:9
Lecture 10 Installing Docker on Linux Text
Lecture 11 Using the Docker Client 5:3
Lecture 12 But Really...What's a Container 8:30
Lecture 13 How's Docker Running on Your Computer 2:44

Section 2 : Manipulating Containers with the Docker Client

Lecture 14 Docker Run in Detail 1:54
Lecture 15 Overriding Default Commands
Lecture 16 Listing Running Containers 4:9
Lecture 17 Container Lifecycle 5:17
Lecture 18 Restarting Stopped Containers 1:39
Lecture 19 Removing Stopped Containers 1:39
Lecture 20 Retrieving Log Outputs 2:34
Lecture 21 Stopping Containers 5:21
Lecture 22 Multi-Command Containers 4:16
Lecture 23 Executing Commands in Running Containers 2:53
Lecture 24 The Purpose of the IT Flag 4:35
Lecture 25 Getting a Command Prompt in a Container 4:7
Lecture 26 Starting with a Shell 2:14
Lecture 27 Container Isolation 3:9

Section 3 : Building Custom Images Through Docker Server

Lecture 28 Creating Docker Images 2:37
Lecture 29 Buildkit for Docker Desktop v2.4.0+ and Edge Text
Lecture 30 Building a Dockerfile 4:51
Lecture 31 Dockerfile Teardown 2:41
Lecture 32 What's a Base Image 5:41
Lecture 33 The Build Process in Detail 11:9
Lecture 34 A Brief Recap 3:25
Lecture 35 Rebuilds with Cache 7:2
Lecture 36 Tagging an Image 4:27
Lecture 37 Quick Note for Windows Users Text
Lecture 38 Manual Image Generation with Docker Commit 5:1

Section 4 : Making Real Projects with Docker

Lecture 39 Project Outline 2:35
Lecture 40 Node Server Setup 5:4
Lecture 41 A Few Planned Errors 5:13
Lecture 42 Resolving npm ERR! could not detect node name Text
Lecture 43 Base Image Issues 7:51
Lecture 44 A Few Missing Files 3:18
Lecture 45 Copying Build Files 4:51
Lecture 46 Reminder for Windows Home Docker Toolbox Text
Lecture 47 Container Port Mapping 7:27
Lecture 48 Specifying a Working Directory
Lecture 49 Unnecessary Rebuilds 4:16
Lecture 50 Minimizing Cache Busting and Rebuilds 4:59

Section 5 : Docker Compose with Multiple Local Containers

Lecture 51 App Overview 3:57
Lecture 52 App Server Starter Code 6:43
Lecture 53 Assembling a Dockerfile 3:12
Lecture 54 Introducing Docker Compose 5:32
Lecture 55 Docker Compose Files 6:2
Lecture 56 Networking with Docker Compose 5:1
Lecture 57 Docker Compose Commands 4:39
Lecture 58 Stopping Docker Compose Containers 2:34
Lecture 59 Container Maintenance with Compose 2:54
Lecture 60 Automatic Container Restarts 9:21
Lecture 61 Container Status with Docker Compose 2:21

Section 6 : Creating a Production-Grade Workflow

Lecture 62 Development Workflow 1:28
Lecture 63 Flow Specifics 6:32
Lecture 64 Docker's Purpose 1:50
Lecture 65 Project Generation 3:26
Lecture 66 Create React App Generation Text
Lecture 67 More on Project Generation 1:45
Lecture 68 Necessary Commands 5:10
Lecture 69 Creating the Dev Dockerfile 3:42
Lecture 70 Duplicating Dependencies 1:29
Lecture 71 React App Exits Immediately with Docker Run Co Text
Lecture 72 Starting the Container 2:50
Lecture 73 Docker Volumes 6:53
Lecture 74 Windows not Detecting Changes - Update Text
Lecture 75 Bookmarking Volumes 4:51
Lecture 76 React App Exited With Code 0 Text
Lecture 77 Shorthand with Docker Compose 4:22
Lecture 78 Overriding Dockerfile Selection 2:3
Lecture 79 Windows not Detecting Changes - Docker Compose Text
Lecture 80 Do We Need 2:51
Lecture 81 Executing Tests 3:39
Lecture 82 Live Updating Tests 4:54
Lecture 83 Docker Compose for Running Tests 5:46
Lecture 84 Tests Not Re-running on Windows Text
Lecture 85 Attaching to Web container Text
Lecture 86 Shortcomings on Testing 8:31
Lecture 87 Need for Nginx 3:7
Lecture 88 Multi-Step Docker Builds 6:54
Lecture 89 Named Builders and AWS Text
Lecture 90 Implementing Multi-Step Builds 7:5
Lecture 91 Running Nginx 2:28

Section 7 : Continuous Integration and Deployment with AWS

Lecture 92 Services Overview 3:4
Lecture 93 Github Setup 3:57
Lecture 94 Travis CI Setup 4:17
Lecture 95 Travis YML File Configuration 7:39
Lecture 96 Travis YML File Configuration Text
Lecture 97 A Touch More Travis Setup 4:15
Lecture 98 Automatic Build Creation 3:30
Lecture 99 Important info about AWS Platform Versions Text
Lecture 100 AWS Elastic Beanstalk 4:10
Lecture 101 More on Elastic Beanstalk 2:26
Lecture 102 Travis Config for Deployment 8:47
Lecture 103 Travis Keys Update Text
Lecture 104 104. Automated Deployments.mp4 7:17
Lecture 105 Exposing Ports Through the Dockerfile 3:57
Lecture 106 AWS Build Still Failing Text
Lecture 107 Workflow With Github 4:0
Lecture 108 Redeploy on Pull Request Merge 2:2
Lecture 109 Deployment Wrapup 2:3
Lecture 110 Environment Cleanup Text
Lecture 111 AWS Configuration Cheat Sheet Text
Lecture 112 Finished Project Code with Updates Applied Text

Section 8 : Building a Multi-Container Application

Lecture 113 Single Container Deployment Issues 3:3
Lecture 114 Application Overview 4:31
Lecture 115 A Quick Note Text
Lecture 116 Application Architecture 5:11
Lecture 117 Worker Process Setup 11:42
Lecture 118 Important note about PG module version Text
Lecture 119 Express API Setup 5:20
Lecture 120 Important Update for Table Query Text
Lecture 121 Connecting to Postgres 7:37
Lecture 122 More Express API Setup 12:20
Lecture 123 Create React App Generation Text
Lecture 124 Generating the React App 1:51
Lecture 125 Fetching Data in the React App 6:32
Lecture 126 Rendering Logic in the App 8:29
Lecture 127 Exporting the Fib Class 0:27
Lecture 128 Routing in the React App 4:36

Section 9 : Dockerizing Multiple Services

Lecture 129 Checkpoint Files Text
Lecture 130 Checkpoint Catchup 2:40
Lecture 131 Reminder on -it flag Text
Lecture 132 Dockerizing a React App - Again! 6:41
Lecture 133 Important Node Image Version Update Text
Lecture 134 Dockerizing Generic Node Apps 3:48
Lecture 135 Adding Postgres as a Service 7:6
Lecture 136 Docker-compose Config 6:17
Lecture 137 Postgres Database Required Fixes and Updates Text
Lecture 138 Environment Variables with Docker Compose 10:20
Lecture 139 Required Client Service Update and Worker Env Text
Lecture 140 The Worker and Client Services 3:43
Lecture 141 Nginx Path Routing 9:41
Lecture 142 Routing with Nginx 11:12
Lecture 143 Building a Custom Nginx Image 5:38
Lecture 144 Starting Up Docker Compose 1:50
Lecture 145 Nginx connect() failed - Connection refused w Text
Lecture 146 Troubleshooting Startup Bugs 3:22
Lecture 147 Opening Websocket Connections 3:52

Section 10 : A Continuous Integration Workflow for Multiple I

Lecture 148 Production Multi-Container Deployments 5:40
Lecture 149 Important Node Image Version Update Text
Lecture 150 Production Dockerfiles 6:5
Lecture 151 Multiple Nginx Instances 5:23
Lecture 152 Nginx fix for React Router Text
Lecture 153 Altering Nginx's Listen Port 4:53
Lecture 154 Cleaning Up Tests 1:11
Lecture 155 Github and Travis CI Setup 4:8
Lecture 156 Fix for Failing Travis Builds Text
Lecture 157 Travis Configuration Setup 8:46
Lecture 158 Pushing Images to Docker Hub 7:35
Lecture 159 Successful Image Building 1:50

Section 11 : Multi-Container Deployments to AWS

Lecture 160 Multi-Container Definition Files 4:30
Lecture 161 Finding Docs on Container Definitions
Lecture 162 Adding Container Definitions to DockerRun 5:19
Lecture 163 More Container Definitions 5:19
Lecture 164 Forming Container Links 7:48
Lecture 165 AWS Configuration Cheat Sheet - Updated for n Text
Lecture 166 Creating the EB Environment 3:30
Lecture 167 Managed Data Service Providers 10:44
Lecture 168 Overview of AWS VPC's and Security Groups 9:21
Lecture 169 RDS Database Creation 6:32
Lecture 170 ElastiCache Redis Creation 4:11
Lecture 171 Creating a Custom Security Group 4:18
Lecture 172 Applying Security Groups to Resources 4:59
Lecture 173 Setting Environment Variables 7:55
Lecture 174 IAM Keys for Deployment 5:12
Lecture 175 Travis Keys Update Text
Lecture 176 Travis Deploy Script 3:21
Lecture 177 Container Memory Allocations 4:11
Lecture 178 Verifying Deployment Text
Lecture 179 A Quick App Change 2:57
Lecture 180 Making Changes Text
Lecture 181 Cleaning Up AWS Resources 5:6
Lecture 182 AWS Configuration Cheat Sheet Text
Lecture 183 Finished Project Code with Updates Applied Text

Section 12 : Onwards to Kubernetes!

Lecture 184 The Why's and What's of Kubernetes 8:7
Lecture 185 Kubernetes in Development and Production 5:47
Lecture 186 Updated Minikube Install and Setup Info - mac Text
Lecture 187 Minikube Setup on MacOS 5:36
Lecture 188 Minikube Setup on Windows Pro Text
Lecture 189 Minikube Setup on Windows Home Text
Lecture 190 Minikube Setup on Linux Text
Lecture 191 Docker Desktop's Kubernetes instead of Miniku Text
Lecture 192 Mapping Existing Knowledge 7:37
Lecture 193 Quick Note to Prevent an Error Text
Lecture 194 Adding Configuration Files 6:52
Lecture 195 Object Types and API Versions 6:55
Lecture 196 Running Containers in Pods 9:19
Lecture 197 Service Config Files in Depth 13:38
Lecture 198 Connecting to Running Containers 10:25
Lecture 199 The Entire Deployment Flow 13:3
Lecture 200 Imperative vs Declarative Deployments 13:36

Section 13 : Maintaining Sets of Containers with Deployments

Lecture 201 Updating Existing Objects 6:10
Lecture 202 Declarative Updates in Action 7:4
Lecture 203 Limitations in Config Updates 2:56
Lecture 204 Running Containers with Deployments 6:3
Lecture 205 Quick Note to Prevent an Error Text
Lecture 206 Deployment Configuration Files 3:18
Lecture 207 Walking Through the Deployment Config 4:23
Lecture 208 Applying a Deployment 6:22
Lecture 209 Why Use Services 5:19
Lecture 210 Scaling and Changing Deployments 6:32
Lecture 211 Updating Deployment Images 3:57
Lecture 212 Rebuilding the Client Image 3:0
Lecture 213 Triggering Deployment Updates 12:25
Lecture 214 Imperatively Updating a Deployment's Image 7:25
Lecture 215 Reminder for Docker Desktop's Kubernetes User Text
Lecture 216 Multiple Docker Installations 5:38
Lecture 217 Reconfiguring Docker CLI 5:58
Lecture 218 Why Mess with Docker in the Node 5:6

Section 14 : A Multi-Container App with Kubernetes

Lecture 219 The Path to Production 5:13
Lecture 220 Checkpoint Files Text
Lecture 221 A Quick Checkpoint 4:36
Lecture 222 Recreating the Deployment 5:30
Lecture 223 NodePort vs ClusterIP Services 3:42
Lecture 224 The ClusterIP Config 3:52
Lecture 225 Applying Multiple Files with Kubectl 4:18
Lecture 226 Express API Deployment Config 6:3
Lecture 227 Cluster IP for the Express API 3:8
Lecture 228 Combining Config Into Single Files 5:59
Lecture 229 The Worker Deployment 4:37
Lecture 230 Reapplying a Batch of Config Files 4:52
Lecture 231 ]Creating and Applying Redis Config 7:26
Lecture 232 Important Note about Expected Postgres Error Text
Lecture 233 Last Set of Boring Config! 6:14
Lecture 234 The Need for Volumes with Databases 7:18
Lecture 235 Kubernetes Volumes 5:17
Lecture 236 Volumes vs Persistent Volumes 3:0
Lecture 237 Persistent Volumes vs Persistent Volume Claim 9:22
Lecture 238 Claim Config Files 2:57
Lecture 239 Persistent Volume Access Modes 3:31
Lecture 240 Where Does Kubernetes Allocate Persistent Vol 7:42
Lecture 241 Designating a PVC in a Pod Template 6:9
Lecture 242 Applying a PVC 2:22
Lecture 243 Defining Environment Variables 4:9
Lecture 244 Adding Environment Variables to Config 5:45
Lecture 245 Creating an Encoded Secret 9:25
Lecture 246 Postgres Environment Variable Fix Text
Lecture 247 Passing Secrets as Environment Variables 5:53
Lecture 248 Environment Variables as Strings 2:18

Section 15 : Handling Traffic with Ingress Controllers

Lecture 249 Load Balancer Services 4:15
Lecture 250 A Quick Note on Ingresses 3:33
Lecture 251 One Other Quick Note! 1:37
Lecture 252 Behind the Scenes of Ingress 5:17
Lecture 253 More Behind the Scenes of Ingress 6:38
Lecture 254 Optional Reading on Ingress Nginx Text
Lecture 255 Docker Driver and Ingress - IMPORTANT Text
Lecture 256 Update on Mandatory Commands Text
Lecture 257 Setting up Ingress Locally with Minikube 6:21
Lecture 258 Setting up Ingress with Docker Desktop's Kube Text
Lecture 259 Ingress Update this.state.seenIndexes.map is Text
Lecture 260 Creating the Ingress Configuratio 7:1
Lecture 261 Testing Ingress Locally 2:50
Lecture 262 Indexes I Have Seen is Empty Text
Lecture 263 The Minikube Dashboard 3:28
Lecture 264 Docker Desktop's Kubernetes Dashboard Text

Section 16 : Kubernetes Production Deployment

Lecture 265 The Deployment Process 5:50
Lecture 266 Google Cloud vs AWS for Kubernetes 4:53
Lecture 267 Creating a Git Repo 3:59
Lecture 268 Linking the Github Repo to Travis 1:35
Lecture 269 Free Google Cloud Credits Text
Lecture 270 Creating a Google Cloud Project 1:59
Lecture 271 Linking a Billing Account 2:11
Lecture 272 Kubernetes Engine Init 1:47
Lecture 273 Creating a Cluster with Google Cloud 4:9
Lecture 274 Docker and Kubernetes- The Complete Guide 4:47
Lecture 275 Kubernetes Dashboard on Google Cloud 4:34
Lecture 276 Travis Deployment Overview 5:5
Lecture 277 Installing the Google Cloud SDK 5:45
Lecture 278 Generating a Service Account 5:29
Lecture 279 Ruby Version Fix Text
Lecture 280 Running Travis CLI in a Container 9:18
Lecture 281 Fixes for Travis iv undefined or repository n Text
Lecture 282 Encrypting a Service Account File 7:55
Lecture 283 More Google Cloud CLI Config 4:40
Lecture 284 Fix For Failing Travis Builds Text
Lecture 285 Running Tests with Travis 6:18
Lecture 286 Custom Deployment Providers
Lecture 287 Unique Deployment Images 8:34
Lecture 288 Unique Tags for Built Images 7:48
Lecture 289 Updating the Deployment Script 7:51
Lecture 290 Configuring the GCloud CLI on Cloud Console 5:34
Lecture 291 Creating a Secret on Google Cloud 2:25
Lecture 292 Helm v3 Update Text
Lecture 293 Helm v2 Update Text
Lecture 294 Helm Setup 8:15
Lecture 295 Kubernetes Security with RBAC 8:21
Lecture 296 Assigning Tiller a Service Account 5:8
Lecture 297 Ingress-Nginx with Helm 1:57
Lecture 298 The Result of Ingress-Nginx
Lecture 299 Finally - Deployment! 3:31
Lecture 300 Did I Really Type That 0:46
Lecture 301 Verifying Deployment 4:24
Lecture 302 A Workflow for Changing in Prod 4:30
Lecture 303 Merging a PR for Deployment 1:1
Lecture 304 That's It! What's Next 1:38

Section 17 : HTTPS Setup with Kubernetes

Lecture 305 HTTPS Setup Overview 5:35
Lecture 306 Domain Purchase 2:17
Lecture 307 Domain Name Setup 3:31
Lecture 308 Fix for Cert Manager Breaking Changes Text
Lecture 309 Cert Manager Install 1:57
Lecture 310 How to Wire Up Cert Manager 5:58
Lecture 311 Issuer Config File 5:7
Lecture 312 Certificate Config File 5:18
Lecture 313 Deploying Changes 3:15
Lecture 314 Verifying the Certificate 3:55
Lecture 315 Ingress Config for HTTPS 6:50
Lecture 316 It Worked! 2:52
Lecture 317 Google Cloud Cleanup Text
Lecture 318 Local Environment Cleanup Text

Section 18 : Local Development with Skaffold

Lecture 319 Awkward Local Development 3:53
Lecture 320 Installing Skaffold 1:58
Lecture 321 The Skaffold Config File 6:42
Lecture 322 Live Sync Changes 5:2
Lecture 323 Automatic Shutdown 5:6
Lecture 324 Testing Live Sync with the API Server 5:28