Unit-2-CI CD & Docker PDF
Unit-2-CI CD & Docker PDF
With consistency in the integration process in place, teams are more likely to
commit code changes more frequently, which leads to better collaboration
and software quality.
Continuous Delivery
Most teams work with multiple environments other than the production, such
as development and testing environments, and CD ensures there is an
automated way to push code changes to them.
DevOps
The aim of DevOps is to shorten the system’s development life cycle while
delivering features, fixes, and updates frequently in close alignment with
business objectives.
DevOps Lifecycle
Continuous Development
This is the phase that involves ‘planning‘ and ‘coding‘ of the software.
The vision of the project is decided during the planning phase and the
developers begin developing the code for the application.
There are no DevOps tools that are required for planning, but there are a
number of tools for maintaining the code.
The code can be written in any language, but it is maintained by using Version
Control tools. Maintaining the code is referred to as Source Code
Management.
Continuous Integration
This may be on a daily or a weekly basis. Every commit is then built and this
allows early detection of problems if they are present.
Continuous Integration
Building code not only involves compilation but it also includes code review, unit
testing, integration testing, and packaging.
The code supporting new functionality is continuously integrated with the existing
code.
This is a very crucial stage of the DevOps life cycle where you continuously
monitor the performance of your application.
Here vital information about the use of the software is recorded. This
information is processed to recognize the proper functionality of the
application.
The system errors such as low memory, server not reachable, etc are resolved
in this phase.
Continuous Monitoring
Also if there are network issues, they are resolved in this phase.
This practice involves the participation of the Operations team who will
monitor the user activity for bugs or any improper behavior of the system.
DevOps & CI/CD
This is the process adopted by all the top companies to develop high-quality
software and shorter development lifecycles, resulting in greater customer
satisfaction, something that every company wants.
DevOps & CI/CD
https://www.youtube.com/watch?v=5Eqz8hm3SVQ&feature=emb_logo
https://www.youtube.com/watch?v=scEDHsr3APg
Docker for DevOps
Docker is a platform that turns out to be a perfect fit for the DevOps
ecosystem.
It is developed for software companies that are struggling to pace up with the
changing technology, business, and customer requirements.
The reason for Docker being soo good for DevOps is its benefits and use cases
of containerizing the applications that support the development and quick
release.
DevOps is primarily used to overcome 'Dev' and 'Ops' problems, and Docker
seems to solve most of them, with the main one being that it can work on any
machine.
Thus, it allows all the teams to collaborate and work effectively and
efficiently.
Docker for DevOps
If you want to return to the previous version, you can do that anytime, as all
the environments become more alike.
One of the biggest benefits of using Docker with DevOps is that developers,
testers, and system admins all use it.
For instance, developers can use Dockerfiles to create Docker images on local
computers and run them.
The system administrators can use the same Docker images to make updates
and stage the production environments.
Thus, you can create stable environments for development, production, and
staging; this approach offers several benefits.
Benefits of using Docker with DevOps
You get a high level of control over all the changes because they are made
using Docker containers and images. Thus, you can return back to the
previous version whenever you want to.
Docker, when used with DevOps, simplifies the process of creating application
topology embodying various interconnected components.
Benefits of using Docker with DevOps
It makes the process of load balancing configuration easier with Ingress and
built-in service concepts.
It enables you to run CI/CD using them, which is more comfortable to use
when compared to just using it with Docker.