Applications of Git, Jenkins and Docker

+5 votes
Jenkins is used for continuous integration but when you think of its application and use cases, how exactly are companies using git, jenkins and docker to make their process simpler?
Sep 20, 2018 in Career Counselling by Hannah
• 16,730 points
57 views

2 answers to this question.

+3 votes

Git is an open-source version control system. When developers develop something for example and app, they make continuous changes which they need to keep a track of. These changes might be anything, removing a bug, release new updates etc. Version Control Systems like git keeps a track of all these changes made to the code.

Jenkins is a Continuous Integration (CI) server. CI is a development practice that requires developers to integrate code into a shared repository several times a day. It is a process of running your tests on a non-developer (say testers) machine automatically when someone pushes new code into the source repository.

Docker is a tool that allows the developer to create, run and test applications using containers. Suppose you want to deploy an app, you’ll have to install all the dependencies, library files and what not. Containers makes this job easier. Containers allow a developer to pack up an application with all the dependencies, libraries and all that’s needed to deploy that app into a package and ships it. Now the only thing developer must do is pull the image from dockerhub and create the container on which the app will run. Its something like a virtual machine but not the same. To know more about the differences, watch this video https://www.youtube.com/watch?v=1WnDHitznGY

So now the developer first pushes a commit to GitHub, which in turn uses a webhook to notify Jenkins of the update. Jenkins can then pull the GitHub repository, build the Docker container which contains stack and then run the test. If the test passes, Jenkins will push the code to the master branch.

Few companies that uses these concepts are Amazon, Netflix, Target, Walmart, Facebook etc.

answered Sep 20, 2018 by Kalgi
• 42,540 points
0 votes

Hey Hannah, CI (Continuous Integration) is one of the phases of DevOps and contains 3 main processes. These processes of CI are: 

  • Code commit to GitHub: For continuous integration/update of software, we use Version Control tool called GitHub. GitHub stores each of your software version and update it only when you approve. You can also revert the changes whenever required.
  • Notifying Jenkins for the Update: GitHub once get the new version of the code, notifies Jenkins of the Update using Webhooks. Jenkins now copies the new GitHub repository.
  • Building Docker Container: Finally, Jenkins builds a Docker container using the copied GitHub code and then run the tests. 
answered Jul 21 by Anvi
• 13,960 points

Related Questions In Career Counselling

0 votes
4 answers

Applications of data science

Data science is a field of Big Data geared toward ...READ MORE

answered Apr 6 in Career Counselling by navdeep
• 330 points
56 views
0 votes
5 answers

What are the roles and responsibilities of a Data Scientist?

Following are one of the most important ...READ MORE

answered Feb 22 in Career Counselling by Barbara
243 views
0 votes
2 answers

Day to day roles and responsibilities of data science

Data Scientist's main roles and responsibilities would ...READ MORE

answered Jan 24 in Career Counselling by Ninja
53 views
+5 votes
7 answers

Docker swarm vs kubernetes

Swarm is easy handling while kn8 is ...READ MORE

answered Aug 27, 2018 in Docker by Mahesh Ajmeria
1,058 views
+13 votes
2 answers

Git management technique when there are multiple customers and need multiple customization?

Consider this - In 'extended' Git-Flow, (Git-Multi-Flow, ...READ MORE

answered Mar 26, 2018 in DevOps & Agile by DragonLord999
• 8,380 points
219 views
+4 votes
27 answers

Which of them is better between Java vs Python? And why?

Python. Don’t even think about it to select ...READ MORE

answered Feb 1 in Career Counselling by navdeep
• 240 points
439 views
0 votes
2 answers