官术网_书友最值得收藏!

Introduction to Docker

In this section, we will learn about Dockers and related concepts. The primary reason why Docker was introduced is that Docker is a virtualization technology which helps IT organizations, including developers, QA, and IT staff, achieve some of the following:

  • Helps to create cloud-native applications by containerizing apps/microservices using Docker. Note that Spring Boot is used for building microservices. These Spring Boot apps/microservices can be containerized using Docker, and deployed and managed on any Cloud platform using container-orchestration tools such as Kubernetes, Mesos, Docker Swarm, and so on. Thus, it is important to get an understanding of Docker.
  • Enhances application portability by enabling Dev/QA team develop and test applications in a quick and easy manner in any environment.
  • Helps to break the barriers between the Dev/QA and Operations teams during the software development life cycle (SDLC) processes.
  • Optimizes infrastructure usage in the most appropriate manner.

In this section, we will emphasize the first point in the preceding list, which would help us set up Spring web application development in a quick and easy manner.

So far, we have seen the traditional ways in which we could set up the Java web application development environment by installing different tools in independently, and later, configuring them appropriately. In a traditional setup, one would be required to set up and configure Java, Maven, Tomcat, MySQL server, and so on, one tool at a time, by following manual steps. On the same lines, you could see that all of the steps described in the preceding sections have to be performed one-by-one manually. The following are some of the disadvantages of setting up development/test environments in this manner:

  • Conflicting runtimes: If a need arises to use software packages (say, different versions of Java and Tomcat) of different versions to run and test the same web application, it can become very cumbersome to manually set up the environment having different versions of the software.
  • Environments getting corrupted: If more than one developers are working in a particular development environment, there are chances that the environment could get corrupted due to the changes made by one developer which the others are not aware of. That, generally leads to developers/teams productivity loss due to the time spent in fixing the configuration issue or re-installing the development environment from scratch.
  • "Works for me" syndrome: Have you come across another member of your team saying that the application works in their environment although the application seems to have broken?
  • New Developers/Testers on-boarding: If there is a need to quickly on-board the new developers, manually setting up the development environment takes some significant amount of time depending upon the applications' complexity. 

All of the preceding disadvantages can be taken care of by making use of the Dockers technology. In this section, we will learn briefly about some of the following:

  • What are Docker containers?
  • What are the key building blocks of Docker containers?
  • Installing Dockers
  • Useful commands to work with Docker containers
主站蜘蛛池模板: 罗源县| 昌邑市| 土默特左旗| 靖远县| 腾冲县| 天等县| 双城市| 搜索| 雅江县| 娄底市| 抚顺市| 岚皋县| 沅江市| 新干县| 合阳县| 周宁县| 裕民县| 吴堡县| 定襄县| 武义县| 广水市| 巩留县| 开鲁县| 安远县| 来凤县| 南溪县| 南阳市| 随州市| 顺昌县| 万州区| 江孜县| 昌宁县| 庄河市| 托克托县| 湖州市| 镇赉县| 历史| 治多县| 长寿区| 卓资县| 巫溪县|