Docker tutorial series (I) introduction to docker tutorial spring cloud mybatis distributed microservice Cloud Architecture

April 2021-09-15 05:25:36
docker tutorial series introduction docker

Docker course

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

Docker Allows developers to package their applications and dependencies into a lightweight package 、 In a portable container , Then post to any popular Linux On the machine , You can also implement virtualization .

Containers are completely sandboxed using the sandbox mechanism , There will be no interface between them ( similar iPhone Of app), More importantly, the container performance overhead is minimal .

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

Who is suitable to read 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 .

Before reading this tutorial , What you need to know
Before reading this tutorial , You need to master Linux Common commands . You can go through Linux Tutorial to learn related commands .

Docker Application scenarios of
Web Automated packaging and distribution of applications .

Automated testing and continuous integration 、 Release .

Deploy and tune databases or other backend applications in a service-oriented environment .

Compile from scratch or extend existing ones OpenShift or Cloud Foundry Platform to build their own PaaS Environmental Science .

Docker The advantages of
Docker Is a for development , An open platform for delivering and running applications .Docker Enables you to separate your applications from your infrastructure , So you can quickly deliver software . With the help of Docker, You can manage your infrastructure the same way you manage your applications . By using Docker The way to quickly deliver , Test and deploy code , You can significantly reduce the delay between writing code and running it in a production environment .

1、 Fast , Deliver your applications consistently
Docker Allows developers to work in a standardized environment using local containers for your provided applications or services , This simplifies the development life cycle .

Containers are great 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 is completed , Push patches to production , It's as simple as pushing an updated image to the production environment .
2、 Reactive deployment and expansion
Docker It's a container based platform , Allow highly portable workloads .Docker The container can be on the developer's native machine , On physical or virtual machines in the data center , Running on a cloud service or in a hybrid environment .

Docker Portability and lightweight features , You can also easily complete the workload of dynamic management , And according to the business requirements , Expand or dismantle applications and services in real time .

3、 Run more workloads on the same hardware
Docker Light and fast . It provides the possibility of virtual machine based on hypervisor 、 economic 、 Efficient alternatives , So you can use more computing power to achieve business goals .Docker Very suitable for high-density environment and small and medium-sized deployment , And you can do more with fewer resources .

Related links
Docker Official website :

Github Docker Source code :


  1. Dubbo's past and present life
  2. Initial experience of Dubbo application level service discovery
  3. Measure the Dubbo function of Tengine open source
  4. Comment envoyer 100 000 requêtes http le plus rapidement possible
  5. Huawei cloud guassdb (for redis) released a new version: Lua script and SSL connection encryption
  6. Mybatis vs hibernate, which performance is better?
  7. Python - Programmation orientée objet - _Rapport()
  8. Python - Programmation orientée objet - _Appel()
  9. JQuery Basics
  10. 五年Java开发经验面试,揭秘今年Java春招面试必问问题有哪些?
  11. 互联网Java工程师面试题,遇到的面试官都是架构师级别,
  12. Python - Programmation orientée objet - _Nouveau() et mode Singleton
  13. Python - Programmation orientée objet - méthode magique (méthode de double soulignement)
  14. Python - Programmation orientée objet - pratique (6)
  15. Python - Programmation orientée objet - réflexion hasattr, GetAttr, GetAttr, delattr
  16. Python - Programmation orientée objet - _Dict
  17. Computer graduation project java + SSM sorting algorithm online reading system
  18. Les questions d'entrevue pour les ingénieurs Java d'Internet, les intervieweurs rencontrés sont tous de niveau architecte,
  19. Cinq ans d'entrevue d'expérience en développement Java, découvrez les questions que vous devez poser lors de l'entrevue d'embauche du printemps Java de cette année.
  20. Java or the king of enterprise software- sivalabs
  21. 互聯網Java工程師面試題,遇到的面試官都是架構師級別,
  22. 从入门到精通系列Java高级工程师路线介绍,拼多多三面惨败,
  23. 今年最新整理的《高频Java面试题集合》,2021Java通用流行框架大全,
  24. La dernière collection de questions d'entrevue Java haute fréquence organisée cette année, 2021 Java Universal Popular Framework
  25. De l'introduction à l'introduction de l'itinéraire de l'ingénieur principal Java de la série Mastering, il y a eu de nombreux échecs.
  26. JavaScript operator (1), Web Development Engineer
  27. Java simultané Programming Books recommended, half - Runner Java Program see me easy to Attack!
  28. Trier les questions d'entrevue Javascript, trier les points de connaissance des itinéraires d'apprentissage
  29. Xiaopeng P7, a high-value domestic electric car that can't be missed
  30. Song Mengjun's "sleepless night" triggered an upsurge of dance storm after 00
  31. Encapsulated PHP sends HTTP requests with curl. Get and post are very easy to use
  32. Recommend a lightweight and practical excellent Linux panel - wgcloud
  33. 从思维图到基础再到深入,记一次字节跳动Java研发岗的面试经历,
  34. 从底层开始带你了解并发编程,五步搞定Java开发环境部署,
  35. 从基础到源码统统帮你搞定,一招彻底帮你搞定HashMap源码,
  36. 從基礎到源碼統統幫你搞定,一招徹底幫你搞定HashMap源碼,
  37. De la base au code source pour vous aider à résoudre tout, un tour pour vous aider à résoudre complètement le code source hashtap,
  38. Commencez par le bas pour vous familiariser avec la programmation simultanée, et terminez le déploiement de l'environnement de développement Java en cinq étapes.
  39. De la carte de pensée à la base et à l'approfondissement, prenez note de l'expérience d'entrevue d'un octet sautant le poste de recherche et développement Java.
  40. Open source: Suzhou tourism strategy based on pyecharts visual analysis
  41. Good play | every character hates it. How does jade building spring do it?
  42. 從底層開始帶你了解並發編程,五步搞定Java開發環境部署,
  43. 以商品超卖为例讲解Redis分布式锁,一招彻底帮你搞定HashMap源码,
  44. 从青铜到王者的路线,2021Java者未来的出路在哪里?
  45. JavaScript Advanced Programming (3rd Edition) Reading note 6
  46. 從青銅到王者的路線,2021Java者未來的出路在哪裏?
  47. Quelle est la voie à suivre pour les 2021 Java du bronze au roi?
  48. Prenez l'exemple de la surproduction de marchandises pour expliquer redis Distributed Lock, un tour complet pour vous aider à résoudre le code source de hashtap,
  49. 以商品超賣為例講解Redis分布式鎖,一招徹底幫你搞定HashMap源碼,
  50. Win10系统 java环境配置
  51. Non-ASCII character ‘\xe5‘ in file on line 4, but no encoding declared; see http://python.or
  52. 手把手教你搭建微信小程序服务器(HTTPS)
  53. JavaScript Review sketch - 1
  54. sqli-labs-less-18 http头user agent+报错注入
  55. Git下载、安装、配置、配合Intellij Idea实现代码版本控制
  56. NHibernate inheritance
  57. Summary of basic knowledge points of JavaScript language (mind map)
  58. GIT télécharge, installe, configure et implémente le contrôle de version de code avec intellij idea
  59. Sqli Labs - less - 18 http header user agent + Error Reporting Injection
  60. Non - ASCII character 'xe5' in file on Line 4, but no Encoding declared;Voirhttp://python.or