Course Highlights
  • Optimize your local development setup for NodeJS in Docker
  • Operate smoothly in a team of NodeJS developers using Docker and Compose
  • Improve the speed and reliability of your Node builds and testing using Docker
  • Get the best NodeJS tweaks to use for dev, test, and prod
  • Design NodeJS images for use with Kubernetes and Swarm
  • Learn about security scanning and locking-down your NodeJS apps
Skills you will learn!
Curriculum

5 Topics
Introduction and Course Roadmap
Getting The Most Out Of This Course
Download Course Resources (GitHub Repo)
Course Chat with Students Learning Containers
Weekly YouTube Live Q&A with Bret

7 Topics
Section Intro: Compose Basics
Getting The Right Docker and Compose Versions
Why Compose?
Compose File Format
docker-compose CLI
Assignment: Compose CLI Basics
Assignment Answer: Compose CLI Basics

10 Topics
Section Intro: Dockerfile Best Practice Basics
Dockerfile Best Practice Basics
FROM Base Image Guidelines
When To Use Alpine Debian or CentOS Images
Assignment Making a CentOS Node Image
Assignment Answers: Making a CentOS Node Image
Running Non-root Container Users
WORKDIR feature change in next video
Working With The Node User Limits
Making Images Efficiently

8 Topics
Section Intro: Controlling The Node Process
Node Process Management
The Truth About the PID 1 Problem
Proper Node Shutdown Options
Assignment: Writing Node Dockerfiles
Assignment Answers: Writing Node Dockerfiles
Assignment: Testing Graceful Shutdowns
Assignment Answers: Testing Graceful Shutdowns

9 Topics
Section Intro: Advanced Node Dockerfiles
NPM command changes
Multi-stage Docker Builds
More Multi-stage Uses
Assignment: Building A 3-Stage Dockerfile
Assignment Answers: Building a 3-Stage Dockerfile
BuildKit The Next Gen Builder
Using BuildKit to Enable SSH Keys for Private NPM Repositories
Using BuildKit to Reuse NPM Cache

7 Topics
Section Intro: Node Apps in Cloud Native Docker
Cloud Native App Guidelines
Twelve Factor Apps - Config
Twelve Factor Apps - Logs
The .dockerignore File
Assignment Migrating Traditional Apps
Assignment Answers Migrating Traditional Apps

14 Topics
Section Intro: Compose for Awesome Local Development
Compose Project Tips
Bind-Mounting Code Optimizing for Performance
Node Modules In Images
Node Modules In Bind-Mounts
NPM Yarn and Other Tools in Compose
File Monitoring and Node Auto Restarts
Startup Order and Dependencies
Healthchecks for depends_on
Shrinking Compose Files and DRY YAML
Making Microservices Easier with Compose
VS Code Debugging and TypeScript
Assignment: Building a Sweet Compose File
Assignment Answers: Building a Sweet Compose File

10 Topics
Section Intro: Making Container Images Production Ready
Avoiding devDependencies In Prod
Dockerfile Comments Arguments and Labels
Running Tests During Image Builds
Security Scanning During Image Build
CI Automated Testing and Proper Image Tags
Adding Healthchecks
Assignment: Making Your Ultimate Node.js Dockerfile
Assignment Answers: Making Your Ultimate Node.js Dockerfile
Assignment Answers BONUS: Making Your Ultimate Node Dockerfile

7 Topics
Section Intro
Node.js Multi-Threaded Concerns
Why Not Use Compose In Production?
Node.js Containers With Proxies
Container Replacement and Connection Management
Node.js With Container Orchestration
Node.js With Docker Swarm

4 Topics
The State of ARM and Docker for Node.js
Running Node.js ARM Containers For Development
Running Node.js ARM Container for Production
The Future of Multi-Arch Docker: Making ARM Easier

3 Topics
Bret's DockerCon Talks on Production Docker
Bret's DevOps and Docker Podcast
Bonus

  Write a Review

Docker for Node.js Projects From a Docker Captain

Go to Paid Course