Course description

In this comprehensive project, you’ll containerize a Node.js todo application step-by-step using Docker. Starting with an Ubuntu EC2 instance, you’ll install Docker and Docker Compose, then build a custom Docker image from a Node.js app. You’ll learn how to run containers, update application code, and manage container lifecycles.

You’ll also dive into Docker volumes to persist database data, tag and push images to Docker Hub for sharing, and finally orchestrate a multi-container setup with Docker Compose—integrating Node.js with a MySQL database. By the end, you’ll have hands-on experience with essential Docker commands, container networking, and YAML-based service definitions.

This project is ideal for developers, DevOps engineers, and cloud practitioners looking to adopt containerization and modern application deployment practices.

Additionally, all learners receive dedicated online support through our Slack workspace where you can ask questions, get troubleshooting help, and interact with our team throughout the entire project.

Click here to access Slack workspace link

What will i learn?

  • Install Docker and Docker Compose on Ubuntu
  • Write a Dockerfile to containerize a Node.js application
  • Write a Dockerfile to containerize a Node.js application
  • Build, run, stop, and remove Docker containers
  • Update containerized applications and manage image versions
  • Persist application data using Docker volumes
  • Tag and push Docker images to Docker Hub
  • Define and run multi-container applications using Docker Compose
  • Orchestrate Node.js and MySQL services with environment variables and volume mounts

Requirements

  • AWS account (optional; can use local Ubuntu/Docker setup)
  • Ubuntu 22.04 instance (local or cloud)
  • Basic familiarity with Linux commands and SSH
  • Docker Hub account (free)
  • Open ports: 22 (SSH) and 3000 (Node.js app)

Frequently asked question

No, the project is beginner-friendly. Basic Linux command line knowledge is helpful, but all Docker and Node.js steps are explained in detail.

Yes, you can follow the same steps on any Ubuntu machine or local Docker installation. AWS is used for demonstration but is not required.

Yes, Docker Hub offers free public repositories. This project uses a free account to push and pull Docker images.

Akinola Ojuola

Cloud Solution Architect, DevOps Consultant & Trainer

Akinola Ojuola is a seasoned Cloud Solution Architect, DevOps Consultant and technical trainer with over 20 years of industry expertise. Throughout his career, he has worked with some of the world’s most prominent technology-driven organisations, including IBM, Fujitsu, Walmart, and MasterCard, delivering transformative solutions across various sectors. Akinola has trained and mentored more than 1,000 students across 18 countries on five continents. His commitment to real-world, practical learning has enabled hundreds of learners to launch successful careers in global tech companies. He is passionate about practical, real-world learning. His teaching approach blends deep technical knowledge with hands-on, enterprise-level experience. He holds multiple industry certifications and leads advanced projects in Cloud Architecture, DevOps, DevSecOps, and Artificial Intelligence for both private enterprises and public institutions.Whether you’re just starting or looking to advance your tech career, you’ll gain valuable, job-ready skills under his guidance.

$10

Lectures

1

Skill level

Advanced

Expiry period

1 Months

Certificate

Yes

Related courses