The document provides an introduction to containers, Docker, and Kubernetes, explaining their fundamental concepts and functionalities. It covers various aspects of containerization such as building blocks, runtimes, orchestration features, and deployment strategies. Additionally, it elaborates on Kubernetes components, storage methods, monitoring, and advanced deployment topics.
Container
Open ContainerProject(OCP)
• Open Container Initiative (OCI)
• the Runtime Specification (runtime-spec) and the Image Specification (image-spec)
CNI and CNM
• Docker vs CoreOS(Google)
referance:https://www.opencontainers.org/about
referance:https://thenewstack.io/container-networking-landscape-cni-
coreos-cnm-docker/
Docker--Swarm
Docker Swarm
•simple to create
• limited ability(auto-scaling, cloud-integration,multi-user, log)
Full Production Environment Stack
• Nginx as Frontend load balancer and Service Router
• Consul+Consul-template to update Nginx config and reload Nginx
• registrator on every worker node
• logspout+ELK
• NFS as storage persistent solution
• cAdvisor+Node_exporter+Prometheus
kubernetes
Why Kubernetes?
•automate deployment, scaling, and management of containerized applications
• container orchestration
• new era of infrastructure
• Docker Swarm/Rancher/Mesos
feature
• auto-failover/Blue-Green/Rollback
• Service Discovery/Load Balance
• Cloud-Integration
• multi-namespace
• Support from Google/Redhat/IBM