Talk about my understanding of Docker _docker

Source: Internet
Author: User
Tags centos docker hub

Let's talk about Docker concept first.

Docker is an open-source engine that can easily create a lightweight, portable, self-contained container for any application. Developers compiling tests on notebooks can be deployed in bulk in a production environment, including VMS, bare metal, OpenStack clusters, and other basic application platforms.

Docker Advantages:

Faster delivery and deployment (once created and configured to work anywhere)

More efficient virtualization (no need for hypervisor support, kernel-level virtualization)

Easier migrations and extensions (porting on any platform)

Simpler management ()

About Docker understanding

First, it's about virtualization

Virtualization we can simply understand as a way of managing resources. There are several ways to virtualize:

1. Full virtualization: Complete virtualization of the underlying hardware. For example: Vmware Workstation

2. Partial virtualization: Virtual only for some of the hardware resources.

3. Operating system-level virtualization: The kernel isolates individual processes by creating multiple virtual operating system instances.

Docker is an operating system-level virtualization.

Second, it is the understanding of Docker

Docker's idea comes from containers, what problems does the container solve?
Just imagine, on a big ship, you can put the goods in a structured arrangement. And all kinds of goods are standardized by containers, the container and container will not affect each other. Then I do not need a special ship to carry fruit and a ship that specializes in transporting chemicals. As long as the goods are properly packed in containers, I can transport them with a big ship. Docker is a similar idea. Cloud computing is now popular, cloud computing is like a big freighter, and Docker is a container.

Advantages of Docker:

1. Faster delivery and deployment

Different applications may have different application environments. For example, the Web site developed by. NET and the software on which PHP is developed are not the same, and if the software they rely on is installed on one server, it will take a long time to debug, causing problems such as IIS and Apache access port conflicts. This is the time to isolate. NET developed websites and. PHP Web sites. Generally speaking, we can create different virtual machines on the server and deploy different applications on different virtual machines, but the virtual machines are expensive. At this point, the Docker can be used to isolate the different applications of the virtual machine, and the cost is smaller than the virtual machine, which means saving money.

2. Easier migration and expansion

Let's give a simple example. For example, when you develop the use of Ubuntu, but the operation of the management is CentOS, operations in the development of your software from the development environment to the production environment will encounter some of the problems of Ubuntu transfer CentOS, such as: There is a special version of the database, Only support Ubuntu but not CentOS, then you have to find a way to solve the problem during the transfer process. But at this time if there is Docker, you can be the development of the environment directly package transfer to the operation of the Victoria, the direct deployment of the Docker you give him can. And the deployment speed is fast.

3. More efficient virtualization and simpler management

On the server load side, if you open a virtual machine alone, the virtual opportunity to occupy the free memory, Docker deployment, these memory will be effectively used. And the Docker container runs without additional hypervisor support, which is kernel-level virtualization, so it can achieve higher performance and efficiency.

The three basic concepts of Docker:

Mirrors, containers, warehouses

Three, Docker three basic concepts of the detailed

1. Mirroring

Docker in English is intended to be "object/dock workers", docker containers meaning the container of the object. For a simple example of mirroring, we often install the Windows operating system, the first to download the ISO image files from the Internet, after decompression to install and use. Docker, too, to create the Docker container, we need to create the container's Docker mirror file similar to the ISO-mirrored file.

2. Container

About the container, we certainly are not unfamiliar. Yes, Docker containers are applications that manage different architectures. In essence, a container is a running instance created from a mirror. Containers and containers are isolated from each other, and each container is a secure platform.

3. Warehouse

Warehouses are places where mirrored files are centrally stored, but there are two concepts to differentiate: The warehouse and the Warehouse service registrar. A warehouse registry server often hosts multiple warehouses, each containing multiple mirrors.

The warehouse is divided into public warehouses and private warehouses, the largest public warehouse is the Docker Hub, storing a large number of mirrors for users to download. Domestic public warehouses, including Docker pool, can provide mainland users with more stable and fast access.

In addition, users can create a private warehouse within the local network. When a user creates his or her own mirror, it can be uploaded to a public or private warehouse using the push command, so that the next time the mirror is used on another machine, it is only necessary to pull down from the warehouse.

Summary:

As a new way of virtualization, Docker has many advantages over the traditional way of virtualization.

First, the launch of the Docker container can be implemented at the second level, which is much faster than the traditional virtual machine approach. Second, Docker is highly utilized for system resources and can run thousands of Docker containers at the same time on a single host.

In addition to running the application, the container basically does not consume additional system resources, so that the application performance is very high, and the system overhead as small as possible. Traditional virtual machines run 10 different applications with 10 virtual machines, and Docker only needs to start 10 isolated applications.

The above is a small series to introduce my understanding of Docker, I hope to help you, if you have any questions please give me a message, small series will promptly reply to everyone. Here also thank you very much for the cloud Habitat Community website support!

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.