Difference between Docker Image and Container?

 Difference between Docker Image and Container?

Docker is open-source, virtualization software designed to ease specific application development. It is based on PaaS (platform-as-a-service) products model aimed at isolating virtualized environments to deploy, build, and test applications that are usually incompatible or not meant to work with the current OS.

The software in itself is fairly easy to master but the terminology术语 related to cocker can be quite baffling令人困惑的 at times. As docker creates novel新奇的 craze in virtualization, terms like images, images, containers, Dockerfiles, and volumes will need to be mastered.

It is a good idea to try to understand the basic roles of these entities. It will speed up learning on how you can work with them. One of the things many users stumble upon is the difference between a Docker image and a container.

This brief wiki will explain how the two differ, and also how they relate. Read more to find out.

What is a Docker Image?

A Docker image is non-changeable file containing libraries, source code, tools and other files needed to run applications.

Due to their read-only characteristics, docker images are also referred to as snapshots. The snapshots represent application and it's VE (virtual environment) at a given point of time. It is this consistency that makes Docker one of the most touted被吹捧的 virtualization applications ever. The ability to stamp time allows developers to experiment and test apps in various conditions.

'Images' may mean pictures in traditional sense but when docker is under the radar, 'images' become copies of an entire system in one, movable file. Because images but templates, you cannot run or execute them. But what you can do is use those templates and build a container on top of it. Container will ultimately be running images. Every time you create a container, it creates a writable layer right on top of an unchangeable image. This is it, you can now modify it the way you want.

Docker Container

Docker container is nothing but an environment virtualized during run-time to allow users to isolate applications from the system underpinning it. These containers are compact紧凑的,简洁的, portable轻便的 units in which you can start up an application quickly and easily.

A notable feature is the addition of standardized computing environment that runs inside the container at all times. Having this computing region is essential because it ensures that applications continue running the way they should ideally be running. Apart from facilitating computing, it also simplifies sharing among teammates.

As docker containers are entirely autonomous, they render essential service components by providing strong isolation, thereby ensuring containers don't interfere with one another, or with the server wherein they have been configured.  As per Docker claims, the units have the strongest isolation capability in the industry existing today.

Containers are different than Virtual Machine that they deploy a different level of virtualization. Unlike VMs where virtualization takes place in the hardware, containers are virtualized in the app layer. It is often called the OS-level virtualization and its only downside is, both host and guest OS needs to be alike. Yet, however, they can make use of one machine, partition its kernel, virtualize the operating system and run isolated processes as if the fellow OS never existed.

 

Difference between Docker Image and Container?

Docker is a platform that runs each and every application segregated and securely by the use of kernel containerization feature. It is a highly efficient and lightweight platform in terms of resources it uses. It uses the host underlying kernel containerization feature rather than creating its own hypervisor.
 

Docker Image is a set of files which has no state, whereas Docker Container is the instantiation of Docker Image. In other words, Docker Container is the run time instance of images.

原文地址:https://www.cnblogs.com/chucklu/p/13100259.html