Search code examples
dockerkubernetescontainers

Is Kubernetes another Docker but in largescale?


I am new to Docker. From what I understood both Docker and Kubernetes manage multiple containers.

Kubernetes is more a large-scale container management with an abstraction layer compared to Docker. Isn't it possible to duplicate this scenario of abstraction in Docker? If so, then why do we say that it is purely different from each other? How exactly does Kubernetes differ from Docker with its application?

I went through some explanations but still being confused regarding this question.Could anyone help me with a good explanation or provide some materials that would help me clear this out?

Thanks in advance.


Solution

  • Docker is a container runtime tool first; Kubernetes cannot be compared to Docker. The PODs are scheduled or managed by the orchestration platform known as Kubernetes.

    You may compare Kubernetes with Docker swarm in several ways.

    Kubernetes have some better options like

    • Distribution of containers based on the requirement (Run ML container on Graphics card Nodes, CPU required container on CPU intensive VMs or Node pool)
    • Scaling based on Metrics - HPA & VPA
    • Observability across platform - Easy to add/integrate other solutions
    • RBAC & Security options - Firewall rules, Network policies
    • Loadbalancing internally with Service
    • Traffic routing option & pluggable solutions - Istio, LinkerD
    • Managed services by cloud providers - EKS, GKE, OKE
    • Variety of Volume options - PV, PVC backed by SSD, NFS, CSI driver options