Kubernetes Overview · Part 0707

Docker Deprecation in KubernetesDocker কি সত্যিই Deprecated?

“Docker is deprecated in Kubernetes” — কথাটা আসলে কী বোঝায়? Kubernetes শুধু built-in dockershim remove করেছে। CRI, containerd, cri-dockerd এবং কেন Docker images ও Docker শেখা এখনও পুরোপুরি relevant — সহজভাবে।

Before and after dockershim removal: kubelet went through dockershim and Docker Engine to containerd; since Kubernetes v1.24 it talks to containerd directly through CRI, while Docker still builds the images
FIG. 07 আগে kubelet → dockershim → Docker Engine → containerd; v1.24 থেকে kubelet → CRI → containerd। Docker image build-এ আগের মতোই।

Docker এবং Kubernetes শেখার সময় একটি common confusion তৈরি হয়।

অনেক সময় আমরা শুনি:

Docker is deprecated in Kubernetes.

এটা শুনে অনেকেই মনে করে Docker হয়তো আর ব্যবহার করা হয় না, Docker শেখার প্রয়োজন নেই, কিংবা Kubernetes এখন Docker images support করে না।

কিন্তু বাস্তবে বিষয়টি মোটেও এমন নয়।

Docker technology deprecated হয়নি। Kubernetes শুধুমাত্র Docker Engine-এর সঙ্গে built-in runtime integration, অর্থাৎ dockershim, remove করেছে।

Docker এখনও application build, test, containerize এবং locally run করার জন্য অত্যন্ত গুরুত্বপূর্ণ একটি technology।

পরিবর্তন হয়েছে মূলত Kubernetes কীভাবে internally containers execute করে সেই architecture-এ।

চলো পুরো বিষয়টি step-by-step বুঝি।

1. Docker Deprecated — এই Confusion কোথা থেকে এলো?

ধরো, তুমি Docker শেখার পর Kubernetes শেখা শুরু করলে।

একটি tutorial-এ দেখলে:

Kubernetes no longer supports Docker as its built-in container runtime.

তখন স্বাভাবিকভাবেই প্রশ্ন আসতে পারে:

যদি Kubernetes-এ Docker ব্যবহার করা না হয়, তাহলে Docker শেখার দরকার কী?

এই প্রশ্নের উত্তর বোঝার জন্য আমাদের দুটি বিষয় আলাদা করতে হবে।

Docker as a Development Platform

এখানে Docker ব্যবহার করা হয়:

  • Application containerize করতে
  • Docker images build করতে
  • Local development environment তৈরি করতে
  • Application testing করতে
  • Docker Compose দিয়ে multiple services run করতে
  • Container images registry-তে push করতে

Docker Engine as a Kubernetes Container Runtime

এটি সম্পূর্ণ আলাদা বিষয়।

আগে Kubernetes সরাসরি Docker Engine-এর সঙ্গে integrate করার জন্য একটি special component ব্যবহার করত, যার নাম dockershim।

Kubernetes সেই built-in integration remove করেছে।

অর্থাৎ:

Docker Development Tools       → Still Supported ✅

Docker Images                  → Still Supported ✅

Docker CLI                     → Still Useful ✅

Docker Compose                 → Still Useful ✅

Built-in Kubernetes Dockershim → Removed ❌

তাই Docker শেখা এখনও পুরোপুরি relevant।

2. Docker আসলে কী কী নিয়ে তৈরি?

Docker শুধু একটি container runtime নয়।

এটি একটি complete containerization platform, যার মধ্যে বিভিন্ন components একসঙ্গে কাজ করে।

Docker Platform
│
├── Docker CLI
│
├── Docker API
│
├── Docker Engine (dockerd)
│
├── BuildKit / Buildx
│
├── Docker Images
│
├── Container Registry Integration
│
├── Volumes
│
├── Networking
│
├── Authentication
│
├── Security
│
└── Container Runtime
    │
    ├── containerd
    │
    ├── containerd-shim
    │
    └── runc

এখানে Docker-এর বিভিন্ন components-এর আলাদা responsibilities রয়েছে।

Componentমূল কাজ
Docker CLITerminal থেকে Docker commands execute করা
Docker APIDocker Engine-এর সঙ্গে communication
Docker EngineDocker containers, images এবং resources manage করা
BuildKitDocker images build করা
Docker VolumesPersistent data manage করা
Docker NetworkingContainer communication
AuthenticationRegistry access এবং credentials management
SecurityContainer isolation এবং permissions
containerdContainer runtime lifecycle management
runcActual container process create এবং start করা

Kubernetes-এর জন্য Docker-এর এই পুরো platform প্রয়োজন হয় না।

Kubernetes মূলত এমন একটি container runtime চায়, যেটি Kubernetes-এর standardized interface ব্যবহার করে containers run করতে পারে।

এখানেই containerd গুরুত্বপূর্ণ হয়ে ওঠে।

3. Kubernetes-এর আসলে কী প্রয়োজন?

Kubernetes হলো একটি Container Orchestration Platform।

এর কাজ শুধু container run করা নয়।

Kubernetes আরও অনেক কিছু manage করে:

  • Application deployment
  • Container scheduling
  • Scaling
  • Service discovery
  • Load balancing
  • Self-healing
  • Rolling updates
  • Resource allocation

কিন্তু Kubernetes নিজে সরাসরি Linux container process create করে না।

এই কাজের জন্য Kubernetes একটি Container Runtime ব্যবহার করে।

উদাহরণস্বরূপ:

  • containerd
  • CRI-O
  • Docker Engine, external cri-dockerd adapter-এর মাধ্যমে

Kubernetes Container Runtime Architecture

Kubernetes Cluster
        │
        ▼
    API Server
        │
        ▼
     Kubelet
        │
        ▼
Container Runtime Interface (CRI)
        │
        ▼
     containerd
        │
        ▼
  containerd-shim
        │
        ▼
       runc
        │
        ▼
   Linux Kernel
        │
        ▼
 Running Containers

এখানে একটি বিষয় পরিষ্কার রাখা দরকার।

Kubernetes-এর kubelet হলো প্রতিটি node-এ চলা agent, যেটি Pod-এর desired state অনুযায়ী container runtime-এর সঙ্গে communicate করে।

এই communication-এর জন্য Kubernetes Container Runtime Interface (CRI) ব্যবহার করে।

CRI কী?

CRI-এর পূর্ণরূপ:

Container Runtime Interface

এটি একটি standardized interface, যার মাধ্যমে Kubernetes বিভিন্ন compatible container runtimes-এর সঙ্গে communicate করতে পারে।

ধরো, Kubernetes বলছে:

এই Pod-এর জন্য একটি container start করতে হবে।

Kubernetes-এর জন্য container runtime internally কীভাবে process create করছে, সেই implementation details জানা জরুরি নয়।

CRI-compatible runtime থাকলেই Kubernetes standardized operations request করতে পারে।

একটা সহজ example:

Kubernetes
     │
     ▼
    CRI
     │
     ├── containerd
     │
     └── CRI-O

containerd সাধারণত CRI integration provide করে, তবে Kubernetes-এর সঙ্গে কাজ করার জন্য সেটি enabled এবং properly configured থাকতে হবে।

4. আগে Kubernetes কীভাবে Docker ব্যবহার করত?

Kubernetes-এর আগের architecture-এ Docker Engine একটি common container runtime ছিল।

কিন্তু একটি technical problem ছিল।

Docker Engine নিজে Kubernetes-এর CRI implement করত না।

তাই Kubernetes-এর kubelet এবং Docker Engine-এর মধ্যে communication করার জন্য একটি adapter প্রয়োজন হতো।

এই adapter-এর নাম ছিল dockershim।

পুরোনো Kubernetes Architecture

Kubernetes
    │
    ▼
  Kubelet
    │
    ▼
 Dockershim
    │
    ▼
Docker Engine
    │
    ▼
 containerd
    │
    ▼
containerd-shim
    │
    ▼
   runc
    │
    ▼
Linux Container

এখানে লক্ষ্য করো, Docker Engine আবার internally containerd ব্যবহার করছে।

অর্থাৎ Kubernetes থেকে container start করার জন্য অতিরিক্ত integration layer maintain করতে হতো।

এই architecture কাজ করলেও Kubernetes maintainers-দের জন্য একটি additional maintenance responsibility তৈরি করেছিল।

কারণ Kubernetes-কে Docker-specific integration code maintain করতে হচ্ছিল।

5. Kubernetes কেন Dockershim Remove করল?

Kubernetes team মূলত architecture simplify করতে চেয়েছিল।

যেহেতু containerd নিজেই Kubernetes-এর CRI-এর মাধ্যমে কাজ করতে পারে, তাই Docker Engine-এর মাধ্যমে containerd access করার প্রয়োজন নেই।

অর্থাৎ আগে:

Kubernetes
    ↓
 Kubelet
    ↓
 Dockershim
    ↓
Docker Engine
    ↓
 containerd
    ↓
   runc
    ↓
 Container

আর এখন সাধারণ containerd-based setup-এ:

Kubernetes
    ↓
 Kubelet
    ↓
   CRI
    ↓
 containerd
    ↓
containerd-shim
    ↓
   runc
    ↓
 Container

এতে কয়েকটি সুবিধা পাওয়া যায়।

1. Simpler Architecture

অতিরিক্ত Docker-specific integration layer প্রয়োজন হয় না।

2. Lower Maintenance Overhead

Kubernetes maintainers-দের built-in dockershim maintain করতে হয় না।

3. Standardized Runtime Integration

CRI-compatible runtimes ব্যবহার করা যায়।

4. Reduced Runtime Overhead

Docker Engine integration layer বাদ পড়ায় system architecture সহজ হয় এবং কিছু operational overhead কমতে পারে।

তবে এর মানে এই নয় যে সব workload-এ performance automatically অনেক বেড়ে যাবে।

6. Docker Deprecation-এর Actual Timeline

এই পরিবর্তন হঠাৎ করে হয়নি।

Kubernetes community আগেই migration-এর জন্য developers এবং administrators-দের প্রস্তুত করেছিল।

Kubernetes Versionকী পরিবর্তন হয়েছে
v1.20 — December 2020Built-in dockershim deprecation announced
v1.21–v1.23Dockershim তখনও available ছিল, তবে deprecated
v1.24 — May 2022Built-in dockershim removed
v1.24+Kubernetes-এ CRI-compatible runtime অথবা external Docker adapter প্রয়োজন

অর্থাৎ May 2022-এ Kubernetes v1.24 release থেকে built-in dockershim আর Kubernetes-এর অংশ নয়।

এটি Docker project-এর deprecation নয়।

Official Kubernetes Documentation:

https://kubernetes.io/blog/2022/02/17/dockershim-faq/

7. Docker Images কি এখনও Kubernetes-এ কাজ করে?

হ্যাঁ, অবশ্যই করে।

এটি পুরো বিষয়টির সবচেয়ে গুরুত্বপূর্ণ অংশ।

Docker দিয়ে build করা container images Kubernetes-এ ব্যবহার করা যায়।

এর কারণ হলো modern container ecosystem standardized image formats ব্যবহার করে।

এখানে গুরুত্বপূর্ণ standard হলো:

OCI — Open Container Initiative

OCI container image format এবং runtime specifications define করে।

এর ফলে একটি compatible image বিভিন্ন container runtimes ব্যবহার করে execute করা সম্ভব।

Example: Docker দিয়ে Image Build

ধরো, তোমার একটি Python application আছে।

Dockerfile:

FROM python:3.12-slim

WORKDIR /app

COPY requirements.txt .

RUN pip install --no-cache-dir -r requirements.txt

COPY . .

CMD ["python", "app.py"]

এখন Docker দিয়ে image build করো:

docker build -t my-python-app:1.0 .

Local environment-এ test করতে:

docker run --rm my-python-app:1.0

এখন image registry-তে push করতে পারো।

Example:

docker tag my-python-app:1.0 \
  registry.example.com/my-python-app:1.0

docker push registry.example.com/my-python-app:1.0

এবার Kubernetes Deployment-এ একই image ব্যবহার করা যাবে।

apiVersion: apps/v1
kind: Deployment
metadata:
  name: python-app
spec:
  replicas: 2
  selector:
    matchLabels:
      app: python-app
  template:
    metadata:
      labels:
        app: python-app
    spec:
      containers:
        - name: python-app
          image: registry.example.com/my-python-app:1.0

তারপর:

kubectl apply -f deployment.yaml

Kubernetes configured container runtime ব্যবহার করে image pull এবং container run করবে।

Private registry হলে Kubernetes-এর appropriate image pull credentials configure করতে হবে।

Complete Workflow

Developer Machine
       │
       ▼
   Source Code
       │
       ▼
    Dockerfile
       │
       ▼
   docker build
       │
       ▼
 Container Image
       │
       ▼
 Container Registry
       │
       ▼
 Kubernetes Cluster
       │
       ▼
      Kubelet
       │
       ▼
       CRI
       │
       ▼
    containerd
       │
       ▼
      runc
       │
       ▼
  Running Application

এখানে Docker ব্যবহার করা হচ্ছে application build করার জন্য।

আর Kubernetes environment-এ containerd ব্যবহার করা হচ্ছে application run করার জন্য।

Important: শুধু developer machine-এ image build করলেই remote Kubernetes cluster সেই image দেখতে পাবে না। Image registry-তে push করতে হবে অথবা local cluster-specific image loading mechanism ব্যবহার করতে হবে।

8. তাহলে Docker এখনও কেন শেখা উচিত?

ধরো, তুমি একজন Software Developer, Data Engineer বা AI Engineer।

তোমার একটি Python FastAPI application আছে।

এখন তুমি application-টি Kubernetes-এ deploy করতে চাও।

তাহলে Kubernetes শেখার আগেই তোমাকে বুঝতে হবে:

  • Dockerfile কীভাবে লিখতে হয়
  • Docker image কীভাবে build হয়
  • Container কীভাবে run করে
  • Environment variables কীভাবে configure করতে হয়
  • Port mapping কীভাবে কাজ করে
  • Volumes কীভাবে ব্যবহার করতে হয়
  • Container logs কীভাবে দেখতে হয়
  • Image Registry কীভাবে কাজ করে

এই fundamental concepts শেখার জন্য Docker খুবই convenient।

Real Development Workflow

Development
    │
    ▼
Write Python Application
    │
    ▼
Create Dockerfile
    │
    ▼
Build Docker Image
    │
    ▼
Run Local Container
    │
    ▼
Test Application
    │
    ▼
Push Image to Registry
    │
    ▼
Deploy to Kubernetes

এই workflow এখনও completely valid।

Kubernetes থেকে dockershim remove হওয়ার কারণে Docker-based development workflow পরিবর্তন করার প্রয়োজন নেই।

9. Docker না থাকলে containerd দিয়ে কীভাবে কাজ করব?

ধরো, তুমি একটি Linux server বা Kubernetes node-এ কাজ করছ।

সেখানে Docker Engine installed নেই।

কিন্তু containerd আছে।

এখন তুমি যদি Docker-এর মতো commands ব্যবহার করতে চাও, তাহলে nerdctl ব্যবহার করতে পারো।

nerdctl হলো containerd-এর জন্য Docker-compatible CLI।

Docker CLI Example

docker run nginx

nerdctl Equivalent

nerdctl run nginx

আরও কিছু example:

Docker Commandnerdctl Equivalent
docker psnerdctl ps
docker imagesnerdctl images
docker pull nginxnerdctl pull nginx
docker run nginxnerdctl run nginx
docker logs nginxnerdctl logs nginx
docker stop nginxnerdctl stop nginx

অনেক common commands একই রকম হলেও Docker এবং nerdctl-এর সব features identical নয়।

আর nerdctl আলাদাভাবে install এবং configure করতে হতে পারে।

containerd-এর Native CLI কী?

containerd-এর native low-level CLI হলো:

ctr

Example:

sudo ctr containers list

Kubernetes namespace inspect করতে:

sudo ctr -n k8s.io containers list

তবে Kubernetes-managed containers troubleshoot করার জন্য সাধারণত crictl বেশি appropriate।

Example:

sudo crictl ps

আর Kubernetes workloads manage করার জন্য kubectl ব্যবহার করাই সঠিক approach।

10. Docker vs containerd — Comparison

TopicDockercontainerd
Technology TypeFull Container PlatformContainer Runtime
Main PurposeBuild, develop, run এবং manage containersContainer lifecycle management
Developer FriendlyYesMore infrastructure-focused
Image BuildingBuildKit / Buildx supportNot its primary responsibility
Container ExecutionYesYes
Kubernetes CRIDocker Engine নিজে CRI implement করে নাCRI integration supported
Kubernetes Integrationcri-dockerd adapter প্রয়োজনDirect CRI integration
Common CLIdockerctr, nerdctl
Local DevelopmentVery commonPossible
Production RuntimeYesVery common
Dockerfile SupportYesnerdctl/BuildKit-based workflows সম্ভব
Kubernetes Node RuntimeExternal adapter দিয়ে possibleDirectly supported

সবচেয়ে গুরুত্বপূর্ণ পার্থক্য:

Docker হলো broader container development এবং management platform।

containerd হলো একটি lower-level container runtime।

Docker নিজেও internally containerd ব্যবহার করে।

11. Docker Engine কি Kubernetes-এ একেবারেই ব্যবহার করা যাবে না?

এখানে একটি technical detail জানা খুব গুরুত্বপূর্ণ।

অনেকে বলে:

Kubernetes no longer supports Docker Engine.

কিন্তু statement-টি পুরোপুরি accurate নয়।

Kubernetes থেকে built-in dockershim remove করা হয়েছে। তবে Docker Engine এখনও external CRI adapter ব্যবহার করে Kubernetes-এর সঙ্গে integrate করা সম্ভব।

এই adapter-এর নাম:

cri-dockerd

এটি Kubernetes-এর পুরোনো built-in dockershim-এর external replacement।

Docker Engine with cri-dockerd

Kubernetes
    │
    ▼
  Kubelet
    │
    ▼
    CRI
    │
    ▼
 cri-dockerd
    │
    ▼
Docker Engine
    │
    ▼
 containerd
    │
    ▼
containerd-shim
    │
    ▼
   runc
    │
    ▼
 Container

অর্থাৎ Kubernetes এখনও Docker Engine ব্যবহার করতে পারে, যদি উপযুক্ত adapter install এবং configure করা থাকে।

তবে সাধারণ modern Kubernetes cluster-এর জন্য সরাসরি containerd বা অন্য CRI-compatible runtime ব্যবহার করা বেশি straightforward।

Official Kubernetes Documentation:

https://kubernetes.io/docs/setup/production-environment/container-runtimes/

12. Kubernetes Node-এ কোন Runtime চলছে কীভাবে Check করব?

ধরো, তুমি একটি Kubernetes cluster maintain করছ।

এখন জানতে চাও cluster-এর nodes কোন container runtime ব্যবহার করছে।

এই command run করো:

kubectl get nodes -o wide

Output-এর CONTAINER-RUNTIME column-এ runtime দেখা যেতে পারে।

আরও বিস্তারিত দেখতে:

kubectl describe node <node-name>

এখানে Container Runtime Version field check করতে পারো।

সব nodes-এর runtime version একসঙ্গে দেখতে:

kubectl get nodes \
  -o custom-columns=NAME:.metadata.name,RUNTIME:.status.nodeInfo.containerRuntimeVersion

Example output:

NAME       RUNTIME
worker-1   containerd://2.x.x
worker-2   containerd://2.x.x
worker-3   containerd://2.x.x

এই example-এ worker nodes containerd ব্যবহার করছে।

Runtime-specific Troubleshooting

যদি node-এ containerd থাকে:

sudo crictl ps

Images দেখতে:

sudo crictl images

Pods-এর runtime-level information দেখতে:

sudo crictl pods

তবে Kubernetes workloads-এর lifecycle operations সাধারণত kubectl দিয়ে manage করা উচিত।

কারণ runtime-level changes Kubernetes-এর desired state-এর সঙ্গে conflict করতে পারে।

13. Docker vs Kubernetes — Simple Real-Life Analogy

এবার পুরো বিষয়টি একটি real-life example দিয়ে বুঝি।

ধরো, Docker হলো একটি complete restaurant।

Restaurant-এর মধ্যে রয়েছে:

  • Menu
  • Waiter
  • Kitchen
  • Storage
  • Payment System
  • Delivery Service

এখানে Restaurant-এর kitchen-কে আমরা containerd-এর সঙ্গে compare করতে পারি।

এখন Kubernetes হলো একটি বড় food delivery এবং restaurant orchestration system।

Kubernetes-এর কাজ অনেকগুলো restaurants বা kitchens-এর মধ্যে কাজ distribute করা।

কোন kitchen-এ কত order যাবে, কোথায় capacity আছে, কোথায় সমস্যা হচ্ছে — এসব manage করা।

Kubernetes-এর নিজের menu, waiter অথবা complete restaurant infrastructure দরকার নেই।

তার দরকার এমন একটি kitchen interface, যার মাধ্যমে খাবার প্রস্তুত করার instruction পাঠানো যায়।

Container runtime-এর ক্ষেত্রে এই standardized interface হলো CRI।

Analogy Architecture

                    Developer
                        │
                        ▼
                 Docker Restaurant
                        │
                  Build & Package
                        │
                        ▼
                 Container Image
                        │
                        ▼
                  Image Registry
                        │
                        ▼
                    Kubernetes
                        │
                 Workload Scheduling
                        │
                        ▼
                       CRI
                        │
                        ▼
                 containerd Kitchen
                        │
                        ▼
                 Running Container

Docker এখনও application preparation এবং packaging-এর জন্য useful।

Kubernetes শুধু নিজের runtime integration আরও standardized করেছে।

14. Common Misconceptions — True or False?

StatementCorrect?Explanation
Docker is dead❌ FalseDocker এখনও container development platform হিসেবে ব্যবহৃত হয়
Docker images no longer work in Kubernetes❌ FalseOCI-compatible images supported
Kubernetes removed built-in dockershim✅ TrueKubernetes v1.24-এ removed
Kubernetes directly requires Docker Engine❌ FalseCRI-compatible runtime ব্যবহার করে
Kubernetes can use containerd✅ TrueCommon runtime choice
Docker Engine can never work with Kubernetes❌ Falsecri-dockerd ব্যবহার করা যায়
Docker is still useful for developers✅ TrueImage building এবং local testing-এ useful
nerdctl can work directly with containerd✅ TrueDocker-like CLI
Kubernetes and Docker are the same❌ Falseএকটি orchestration platform, অন্যটি container platform
Kubernetes can use CRI-O✅ TrueCRI-compatible runtime

15. Full Architecture — Docker Development থেকে Kubernetes Production পর্যন্ত

একজন Developer বা AI Engineer-এর জন্য এই full workflow বোঝা গুরুত্বপূর্ণ।

                 DEVELOPER MACHINE
                        │
                        ▼
                   Source Code
                        │
                        ▼
                    Dockerfile
                        │
                        ▼
                 Docker BuildKit
                        │
                        ▼
                   Docker Image
                        │
                        ▼
                 Local Docker Test
                        │
                        ▼
                 Container Registry
                        │
                        │ Push / Pull Image
                        ▼
                 KUBERNETES CLUSTER
                        │
                        ▼
                    API Server
                        │
                        ▼
                    Scheduler
                        │
                        ▼
                    Worker Node
                        │
                        ▼
                      Kubelet
                        │
                        ▼
                        CRI
                        │
                        ▼
                    containerd
                        │
                        ▼
                  containerd-shim
                        │
                        ▼
                       runc
                        │
                        ▼
                   Linux Kernel
                        │
                        ▼
                  Running Container

এই architecture-এ Docker এবং Kubernetes একসঙ্গে ব্যবহার করা হচ্ছে, কিন্তু তাদের responsibilities আলাদা।

Docker image তৈরি করতে সাহায্য করছে।

Kubernetes application orchestrate করছে।

containerd এবং runc container execute করতে সাহায্য করছে।

16. Final Takeaway — আমাদের কী মনে রাখতে হবে?

পুরো বিষয়টি কয়েকটি গুরুত্বপূর্ণ points-এ summarize করা যায়।

Docker Deprecated হয়নি

Docker এখনও containerized application development-এর জন্য relevant।

Kubernetes built-in dockershim remove করেছে

Kubernetes v1.24 থেকে built-in Docker Engine integration আর নেই।

Kubernetes CRI ব্যবহার করে

CRI-এর মাধ্যমে Kubernetes compatible container runtimes-এর সঙ্গে communicate করে।

containerd Kubernetes-এর সঙ্গে directly integrate করতে পারে

Proper CRI configuration থাকলে Docker Engine-এর middle layer প্রয়োজন হয় না।

Docker Images Kubernetes-এ কাজ করে

OCI-compatible Docker-built images Kubernetes workloads-এ ব্যবহার করা যায়।

Docker শেখা এখনও গুরুত্বপূর্ণ

Container images, Dockerfile, volumes, networking, registries এবং local testing বোঝার জন্য Docker একটি excellent learning platform।

Docker Engine Kubernetes-এ একেবারে নিষিদ্ধ নয়

প্রয়োজনে cri-dockerd adapter ব্যবহার করে Docker Engine integrate করা যায়।

Official References

One-Line Summary

Docker এখনও application build, test এবং containerize করার জন্য গুরুত্বপূর্ণ। Kubernetes শুধু built-in Docker Engine integration remove করেছে, কারণ containerd-এর মতো CRI-compatible runtime সরাসরি ব্যবহার করে containers run করা যায়।

একজন AI Engineer, DevOps Engineer বা Kubernetes Administrator হিসেবে Docker এবং containerd — দুটোরই কাজ বোঝা গুরুত্বপূর্ণ।

Docker শেখাবে কীভাবে application containerize করতে হয়। আর Kubernetes শেখাবে কীভাবে সেই containerized applications-কে production infrastructure-এ deploy, scale, monitor এবং manage করতে হয়।

Was this guide helpful?

Search the archive

Press Esc to close