Chapter 1 Introduction Docker

Chapter 1 Introduction Docker

1.1. Docker Profile

  • Docker is an application container engine open source, based on the development of language and follow Apache2.0 GO protocol open source;
  • Docker allows developers to package their applications and dependencies to a lightweight, portable container and then posted to any popular Linux machine, can be virtualized;
  • Container full use of the sandbox mechanism will not have any excuse to each other, more important is the performance overhead is very low container;
  • Docker divided after 17.03 version from CE (Community Edition: Community Office), and (Enterprise Edition: Enterprise Edition) EE, we use community can do.

    1.2. Docker application scenarios

  • Automation package and publish Web applications;
  • Automated testing and continuous integration, publishing;
  • Deployment and tuning the database or other back-office applications in a service-oriented environment;
  • Recompile or extend an existing or OpenStack Cloud Foundry platform to build their own paas environment.

    1.3. Docker advantage

    As a new approach to virtualization, docker, compared with the traditional approach to virtualization has many advantages:

    1.3.1. More efficient use of system resources

    Since the container does not require additional hardware virtualization overhead and run a full operating system, docker higher utilization of system resources. Whether the application execution speed, memory loss or file storage speed, technology should be more efficient than traditional virtual machine. Therefore, compared to virtual machine technology, the same configuration of a host can often run a greater number of applications.

    1.3.2. Faster startup time

    The traditional virtual machine technology often takes a few minutes to start the application service, while docker container application, due to the direct kernel running on the host, without launching a full operating system, it can be done in seconds or even milliseconds of the start-up time. Greatly save development, testing, deployment time.

    1.3.3. Consistent runtime environment

    The process of developing a common environmental problem is consistency. Because the development environment, test environment, the production environment is inconsistent, resulting in some bug it has not been found during development. The docker mirroring provides complete run-time environment in addition to the core, to ensure the consistency of the application runtime environment, which does not occur again environmental problems caused by the inconsistency.

    1.3.4. Continuous Delivery and Deployment

    The development and operation and maintenance (DevOps) personnel, the most hope is to create or configure once, run anywhere normal. Use docker continuous integration can be achieved through custom applications mirroring, continuous delivery, deployment. Developers can be performed by Dockerfile mirror constructed, combined with continuous integration (Continuous Integration) system integration test, the operation and maintenance personnel can quickly deploy the image directly in a production environment, even combine continuous deployment (Continuous Delivery / Deployment) system Auto-deployment. Dockerfile use the mirror to build transparency, the development team can not understand the application operating environment, convenient operation and maintenance team also understand the conditions needed to run, to help better production environments deploy the image.

    1.3.5. Easier migration

    Since docker ensure the consistency of the execution environment, making it easier to migrate applications. docker can run on many platforms, whether it is physical machines, virtual machines, public cloud, private cloud, or even a notebook, its operating results are consistent. So users can run applications on a platform very easily migrate to another platform, without worrying about changes in the operating environment lead to the application not working properly.

    1.3.6. Easier to maintain and extend

    Tiered storage and use docker mirroring technique, such overlapping portion of the multiplexing applications easier, also makes the maintenance easier application updates, based on further expansion of the mirror base image becomes very easy. In addition, docker team with various open source project team to maintain a large number of high-quality official mirror, either in production environments, and can be directly as a basis for further customization, greatly reducing the cost of mirroring application services.

    1.3.7. Compared to traditional virtual machine summary

  • Container: Start second stage, hard disk (MB), near native performance, stand-alone support thousands of containers;
  • VM: Start of minutes, using a hard disk (GB), the performance was weaker than the native, stand-alone general support dozens.

Guess you like

Origin www.cnblogs.com/HsLM/p/12399219.html