Home >Operation and Maintenance >Docker >What is the difference between docker and traditional virtualization technology?

What is the difference between docker and traditional virtualization technology?

王林
王林forward
2020-06-29 17:36:163985browse

What is the difference between docker and traditional virtualization technology?

Docker is similar to the concept of a virtual machine, but it has several differences from virtualization technology, as follows:

(Recommended learning: docker tutorial)

1. Virtualization technology relies on physical CPU and memory and is hardware-level; while docker is built on the operating system and uses the containerization technology of the operating system, so docker can even run on a virtual machine;

2. Virtualization systems generally refer to operating system images, which are relatively complex and are called "systems"; while docker is open source and lightweight and is called "containers". A single container is suitable for deploying a small number of applications, such as deploying a redis, A memcached;

3. Traditional virtualization technology uses snapshots to save state; docker is not only more portable and low-cost in saving state, but also introduces a similar source code management mechanism to save the snapshot history of the container. Versions are recorded one by one, and the switching cost is very low;

4. Traditional virtualization technology is more complicated when building the system and requires a lot of manpower; while docker can build the entire container through Dockfile, restarting and building faster soon. More importantly, the Dockfile can be written manually, so that application developers can guide the system environment and dependencies by publishing the Dockfile, which is very beneficial to continuous delivery;

5. Dockerfile can be based on the already built container image. Create new container. Dockerfile can be shared and downloaded through the community, which is conducive to the promotion of this technology.

Docker will work like a portable container engine. It packages the application and all the program's dependent environments into a virtual container, which can run on any kind of Linux server. This greatly improves the flexibility and portability of program operation, regardless of whether it requires permission, whether it is in a public cloud or a private cloud, whether it is a bare metal environment, etc.

The above is the detailed content of What is the difference between docker and traditional virtualization technology?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:csdn.net. If there is any infringement, please contact admin@php.cn delete