Docker — কেন এবং কীভাবে

লেসন ২৪ / ৩৮

📦 Container vs VM

VM = full OS per instance (GB, slow)। Container = shared kernel, isolated process (MB, instant)।

🏗️ Architecture

  • Docker Engine (daemon)
  • CLI — docker command
  • Image — read-only template
  • Container — running instance
  • Registry — Docker Hub, ECR

📥 Install

curl -fsSL https://get.docker.com | sudo sh
sudo usermod -aG docker $USER
newgrp docker
docker run hello-world

🎯 Basic Commands

docker pull nginx:alpine
docker images
docker run -d -p 80:80 nginx
docker ps / ps -a
docker logs -f 
docker exec -it  sh
docker stop/rm 
docker system prune -af --volumes

🚀 Real Examples

# MySQL
docker run -d --name mysql \
  -e MYSQL_ROOT_PASSWORD=secret \
  -v mysql-data:/var/lib/mysql \
  -p 3306:3306 mysql:8

# Redis
docker run -d --name redis -p 6379:6379 \
  redis:alpine redis-server --requirepass mypass

# Postgres
docker run -d --name pg \
  -e POSTGRES_PASSWORD=secret \
  -v pg-data:/var/lib/postgresql/data postgres:16

🎓 মূল কথা ⭐

Docker = portable, isolated, fast। 1 command → full DB। 2024+ DevOps must-know।