General Understanding of Docker and Kubernetes
Q. What is Docker?
A. Docker is a containerization platform that packages the application and all its dependencies together in the form of a docker container to ensure that the application works seamlessly in any environment.
Q. What is Docker Daemon?
A. Docker comes with Docker Daemon, which is the main program managing containers. Docker Daemon allows access to its features through Docker Engine API, used by Docker Command-Line Interface (CLI).
Q. What's a Docker image?
A. An image is a dormant, immutable, file that's a snapshot of a container. Images are created with the build command, and they'll produce a container when started with run.
Images are stored in a Docker registry such as registry.hub.docker.com. As images can become quite large, they are designed to be composed of layers of other images, allowing a minimal amount of data to be sent when transferring images over the network.
Q. What's a docker container?
A. In a programming metaphor, if a docker image is a class, then a docker container is an instance of a class—a runtime object. Container refers to operating system-level virtualization.
Q. What's Kubernetes?
A. Kubernetes is a popular container orchestration program. It’s a portable abstraction that’s compatible with the main cloud providers i.e. Google Cloud, Amazon Web Services, and Microsoft Azure.
Q. What's a Pod in Kubernetes?
A. A Pod encapsulates
- one or more closely related containers
- storage resources
- a unique network IP
- and configurations on how the container(s) should run.
A pod is a basic unit that Kubernetes deals with and thereby represents a single instance of an application. Kubernetes Pods are mortal, when they die, they are not resurrected.
Q. What's a Node in the Kubernetes?
A. A Node is a worker machine in Kubernetes and may be either a virtual or a physical machine, depending on the cluster. Each Node is managed by the Master. A Node can have multiple pods.
Q. What's a Service in Kubernetes?
A. Service is an abstraction that defines a logical set of Pods and a policy by which to access them, sometimes this pattern is called a micro-service. In other terms, Services are an interface to a group of containers so that consumers do not have to worry about anything beyond a single access location.
Q. What're Persistent Volumes in Kubernetes?
A. To store data permanently, Kubernetes uses Persistent Volumes. Persistent Volumes provide a file system that can be mounted to the cluster, without being associated with any particular node.
Q. What is helm in Kubernetes?
A. Helm is a package manager for Kubernetes applications. In other terms, a helm is a tool for managing Kubernetes charts.
Q. What are the helm charts in Kubernetes?
A. A Helm chart is simply a collection of YAML template files organized into a specific directory structure. In other term, charts are packages of pre-configured Kubernetes resources.
Helm helps you manage Kubernetes applications whereas Helm Charts help you define, install, and upgrade even the most complex Kubernetes application.
Kubernetes is quickly becoming the new standard for deploying and managing software in the cloud.