Docker course

Docker Is an open source application container engine , be based on Go language And follow Apache2.0 Open source agreement .

Docker It allows developers to package their applications and dependency packages into a lightweight 、 Portable containers , Then publish to any popular Linux On the machine , Virtualization can also be achieved .

Containers are completely sandboxed , There will be no interface with each other ( similar iPhone of app), More importantly, the container performance overhead is very low .

Docker from 17.03 After version, it is divided into CE(Community Edition: Community Edition ) and EE(Enterprise Edition: Enterprise Edition ), We can use the community version .


Who is suitable for reading this tutorial ?

This tutorial is suitable for operation and maintenance engineers and back-end developers , Through this tutorial, you can learn... Step by step Docker Use of .


Before reading this tutorial , What you need to know

Before reading this tutorial , You need to master Linux Common commands . You can use the website's Linux course To learn the relevant commands .


Docker Application scenarios

  • Web Automated packaging and publishing of applications .

  • Automated testing and continuous integration 、 release .

  • Deploy and adjust databases or other background applications in a service-oriented environment .

  • Compile from scratch or extend existing OpenShift Or Cloud Foundry Platform to build your own PaaS environment .


Docker The advantages of

Docker Is a tool for developing , An open platform for delivering and running applications .Docker Enables you to separate applications from infrastructure , So that software can be delivered quickly . With the help of Docker, You can manage your infrastructure the same way you manage your applications . By using Docker Methods to quickly deliver , Test and deploy code , You can greatly reduce the latency between writing code and running code in a production environment .

1、 Fast , Deliver your applications consistently

Docker Allow developers to work in a standardized environment using local containers for applications or services you provide , This simplifies the development life cycle .

Containers are ideal for continuous integration and continuous delivery (CI / CD) Workflow , Consider the following example scenario :

  • Your developers write code locally , And use Docker Containers share their work with colleagues .
  • They use Docker Push its application into the test environment , And perform automatic or manual tests .
  • When developers find errors , They can fix it in the development environment , Then redeploy it to the test environment , To test and verify .
  • After the test , Push the patch to the production environment , It's as simple as pushing an updated image to the production environment .

2、 Responsive deployment and expansion

Docker Is a container based platform , Allow highly portable workloads .Docker The container can be on the developer's machine , On physical or virtual machines in the data center , Running on cloud services or in a mixed environment .

Docker Portability and lightweight features , It also allows you to easily complete the workload of dynamic management , And according to the business needs , Expand or dismantle applications and services in real time .

3、 Running more workloads on the same hardware

Docker Light and fast . It provides a feasible solution for virtual machines based on hypervisor 、 Economics 、 Efficient alternatives , So you can use more computing power to achieve your business goals .Docker Ideal for high-density environments and small to medium-sized deployments , And you can do more with fewer resources .


Related links

Docker Official website :https://www.docker.com

Github Docker Source code :https://github.com/docker/docker-ce