/docker

This repository is a step-by-step, practical Docker learning journey. Each folder represents a new level of Docker understanding — starting from the basics (images, containers, networks) to advanced setups (microservices, CI/CD pipelines, and Kubernetes). Ideal for beginners, students, and developers who want to master Docker with real examples.

🐳 Docker — Complete Practical Learning Repository

Welcome to the Docker Learning Repo — your one-stop open-source guide to mastering Docker with 17+ real-world projects.
This repo is built step-by-step, from beginner to advanced, to give you complete practical Docker knowledge 💪


🚀 What You'll Learn

  • Docker basics: Images, Containers, Volumes, Networks
  • Building and running Dockerized apps
  • Writing efficient Dockerfiles
  • Working with Docker Compose
  • Connecting Databases (MySQL, MongoDB, PostgreSQL)
  • Full-stack setups (MERN, Next.js, Django)
  • Using Nginx, Redis, and multi-stage builds
  • Automating builds with GitHub Actions (CI/CD)
  • Deploying containers to Kubernetes (Minikube)

🗂️ Folder Structure

Folder Description
docker_basic/ Learn Dockerfile, image creation, and container basics
docker_with_python/ Flask / FastAPI app containerization
docker_with_express/ Node.js Express app inside Docker
docker_with_mongo/ Connect Dockerized apps to MongoDB
docker_with_db/ MySQL / PostgreSQL examples
docker_with_nextjs/ Build and run Next.js apps in Docker
docker_with_mern/ Full MERN stack with Docker Compose
docker_with_nginx/ Nginx reverse proxy and static site setup
docker_with_django/ Django + Postgres + Gunicorn + Nginx setup
docker_with_redis/ Redis caching or session store examples
docker_with_microservices/ Multi-service (user/order/db) setup
docker_with_volumes/ Persistent storage using volumes & mounts
docker_with_networks/ Custom Docker networks between containers
docker_with_multistage_build/ Image optimization using multi-stage builds
docker_with_alpine/ Lightweight Alpine-based Docker images
docker_with_ci_cd/ GitHub Actions pipeline for build & push
docker_with_kubernetes/ Deploy Docker apps on Kubernetes (minikube)

💡 Note:

  • blueprint branch = Only folder structure + comments
  • practice branch = Step-by-step practice / coding
  • learn branch = Fully working code (for reference)

🧩 Prerequisites

Before you start:

  • Install Docker and Docker Compose
  • Basic command line knowledge
  • Install Git

⚙️ How to Use

  1. Clone the Repository
    git clone https://github.com/<your-username>/docker.git
    cd docker
    
  2. Pick a Folder
    cd docker_basic
    
  3. Build and Run

🌟 Support the Project

If this repo helps you learn Docker, please star ⭐ the repository
and share it with other learners to support open-source education ❤️


🧑‍💻 Author

Dampi Pal
Open-source Enthusiast • DevOps Learner • Docker Explorer

📫 Reach out: