Jenkins CI/CD Pipeline - SonarQube, Docker, Github Webhooks on AWS | Resume Project | English
ฝัง
- เผยแพร่เมื่อ 26 มี.ค. 2023
- In this video, we will explore how to set up a Jenkins CI/CD pipeline using Github, Sonarqube, and Docker on an AWS EC2 instance.
Jenkins is a popular open-source automation server that helps automate various tasks in the software development process, including building, testing, and deploying software. Github is a code repository that provides version control and collaboration tools, and Sonarqube is a code quality management tool that helps analyze and manage code quality in software projects. Docker is a containerization platform that helps simplify the deployment of software applications.
First, we will create an AWS EC2 instance and install Jenkins on it. We will then set up a Github repository and integrate it with Jenkins. Next, we will configure Sonarqube to analyze code quality in our Github repository. Finally, we will create a Docker image of our application and deploy it using Jenkins.
Throughout the video, we will explain the importance of each step and provide detailed instructions on how to configure each tool to work together seamlessly. By the end of this video, you will have a working CI/CD pipeline that will help automate the software development process and ensure the quality of your code.
Whether you are a developer, software engineer, or DevOps professional, this video will provide you with valuable insights on how to set up a CI/CD pipeline using Jenkins, Github, Sonarqube, and Docker on an AWS EC2 instance. Join us in this exciting journey and learn how to streamline your software development process today!
Make sure to subscribe to our channel if this video helped you and you want to see more content like this. Don't forget to give this video a thumbs up if you found it helpful and hit the notification bell icon so you don't miss any updates from our channel. Thank you for watching!
#cicd #jenkins #devopsprojects - แนวปฏิบัติและการใช้ชีวิต
You are the Goat, thanks because of you, I got the JOB!!
Thank you! I'm glad my videos helped you to land on a job! Congratulations 🥳🎉
thanks man, this is really awesome!
key timestamps for easy reference:
06:12 set up jenkins server
12:35 create jenkins pipeline
14:22 enable github webhook
16:00 test jenkins pipeline
18:17 set up sonarqube server
24:24 set up new sonarqube project
26:15 create new sonarqube token
27:24 install and configure SonarQube Scanner plugin in jenkins
31:49 test jenkins pipeline (which incl. the sonarqube code checking build step)
33:00 set up docker server (i.e. the hosting server)
37:05 set up ssh of docker server, create a ssh key pair in jenkins server and copy to docker server
39:30 add docker server into jenkins pipeline
41:05 add a remote shell build step to test if jenkins server can ssh into docker server and run shell script
42:19 create a Dockerfile
43:54 add a execute shell build step to copy build files from jenkins server to docker server
47:54 in the docker server, grant permission to user ubuntu to execute $docker commands
48:34 add a remote shell build step to build the docker image and spin it up in docker server
Hi, all went good only thing now its not possible to get the ssh form jenkins ec2 to Dcocker ec2 following the same steps. mentioned at 37:05. after modifying the sshd_config and restart the same, getting the same public key permission denied error. over time do you think some settings ben changed? how I can achieve this jenkins to docker ssh now? can you help me with the steps? have to fix a similar kind of issue.
@14:13 webhook for jenkins auto trigger build
@20:17 install sonarQube
@24:28 Configure SonarQube
@27:20 Configure Jenkins for SonarQube
one of the best devops video which anyone can follow and work on CI/CD .thankyou!
I want to applaud your ability to strike the perfect balance between simplicity and technicality. You managed to explain intricate concepts without overwhelming the audience, ensuring that even viewers with varying levels of knowledge could follow along. It's a testament to your exceptional communication skills and the thoughtfulness you put into tailoring your content to the point to your audience's needs.
This might be the best comment I’ve seen on TH-cam. Definitely gonna watch this because of this comment.
thank you so much, i was learning devops, i was really confused, but after watching the whole process in your amazing and simple video i get to know how will i do it now!!!
thanks again man
Thanks a lot. Implemented the whole project and CSS was working for me perfectly. Will repeat this few times. Thanks again
Complete informative. Kindly upload informative videos that help learners to get explicit knowledge in practicals. 😊👍👍
Thanks a lot. This is the most comprehensive DevOps project video out there on TH-cam.
Also you struck the perfect balance between simplicity and technicality. Please make more such project videos.
Glad it was helpful! Thank you.
Nicely explained and good project for beginners, thank you. Please do more videos like this and thank you again 🙏
Neat and clean explanation. Please create more complex CI CD project video which is used in day to day production environment in companies
Neat and Clean automation steps for beginners . Thanks folk
Ive watched tons of videos and this was so easy to understand and follow. Thank you!
This is a very fantastic piece. I made sure to jot down the steps in my simple terms so I can go forth to do the hands on. I hope to write a robust documentation on this project and give you a shout out .. Will share with you on LinkedIn so you could go through it.
Thanks for this.. Really helped.
I'm hoping to see how we'll integrate terraform and Ansible into this project in a progressive manner. ❤❤❤❤
Thanks a lot for this video really helped out understand the concept of the CI/CD pipeline. It's one of the simple video which i have seen till now.
Thanks for the feedback! I'm glad it helped you understand the concepts of CI/CD Pipelines
Excellent teaching sir awesome clearly understood
Now i am thinking devops is very easy thank you 👍
Appreciate your efforts and shows your knowledge
Thanks you so much. I was really stuck with the devops practice project but then i came across your video, it was so good. I really appreciate your efforts man . Hats off!!!
You're very welcome!
simply awsme..kp it up
Outstanding... Clean and clear
your explanation was very cool and simple
Top notch content, perfect tutorial
Thank you so much for the tutorial. I learned a lot!
Very good explanation.
Thanks for a very good demo of these technologies. Good job.
You're welcome!
This is a great job to understand whole process in limited time . Thanks ))
Glad it was helpful!
Thanks a lot guy. May God reward you
One of the best video ever for Beginners-Industry Project, Keep Doing🖥
Thanks a ton
One of the best videos ever .
Hey Aareez, you did such a great video. Everything clear, straight to the point and undestandable. Please keep doing more videos like this and adding more complexity such as installing Grafana + Prometeus.
Thank you! I'll make a video on it.
You have implemented all the concepts in a very simple way, thats why its easy to understand and for hands on. I have completed this project as it is, we expect more project videos like this.
There are more projects coming soon!
@@aareezasif need that with kubernetes
Great video. Thank you
excellent sir...thank you
just tried the full setup on my aws account its working fine :) thanks Aareez!!
I'm glad everything is working fine and You're welcome :)
Itna simple kaise explain kar lete ho bro. Good going, I wish you 50k subscribers in coming months. God bless you
Completed this project thanks for sharing knowledge for free.
Good job! I'm glad you learned something new
good work
Excellent video. Thank you very much sir!!
You're always welcome!
After two failed attempts finally I executed this project 😊 felt so happy. Thank you for this wonderful session I got the basic understanding of how different tools integrate in Devops. Please keep up your work 🙏
Congrats! You did a great job there.
Very well explaining
Thank you Sir!!
many thanks, amazing tuto, keep the good work!
Thank you!
Thanks for the project Aareez. Much appreciated! Great help! :)
You're most welcome!
Thanks, this was really good
thank you !!! Very helpful for the beginner
I'm glad to hear that!
Thank you, sir. Very well Explained.
You're welcome!
Very nice sir, I needed the bit on Jenkins and this helped... thanks a lot, pls make more videos, God bless
Thank you! You can also checkout the other videos on my related to Jenkins. I'll be making more videos soon
im about to start my devops journy,
and i got glimps of what is exactly devops engineer do,
thanks god bless you
Great job 👍👍👍👍
Very good explanation. Thank you so much
Glad it was helpful!
youtube scrolling show your video its awesome you are best tutor pls make video about kubernetes love from india subscribed you sir
This was a awesome video. Keep it up. expecting more content like this, Thanks
Thank you! We're working on more content like this.
Bro thank you so much, by far the best explanation
You're always welcome!
Great brother 👏
Really Appreaciable Efforts. and thank you so much
You're most welcome! Thank you
Thank you so much
Sir very good video
successful completed the project and running perfect. I want to see another project using kubernetes
Nice sir❤
this is gem, now adding kubernetes to it would be awesome ;)
thank you for doing this video.
You're welcome
Dhanyawad bhaiya awesome project
You're welcome! and Thank you
Very nice job thank for video
Thanks to you
great one sir
Thank you!
Hats off bro 💯💯🙌🙌
seedhi baat no bakwas
Exactly!
I watched too many tutorial but none of them close to what you make so really appreciate it
either it's because I already know few things but in this tutorials almost everything is new for me
Thanks again
quality content bro🙂
Thank you bro
From Viet Nam. Thanks ❤
Thanks a lot.
Awesome work.... I'm a new subscriber.... Please do more projects on DevOps and troubleshooting series too
Thanks, will do!
Great ❤🎉
This is incomparable. I read a book with similar content, and it was incomparable. "Mastering AWS: A Software Engineers Guide" by Nathan Vale
awsome thx
Assalamwalikum bhai, well explained , its crystal clear ...i expect this kind of videos on Azure Devops too.....
More videos will be coming soon! Especially on GCP and Azure Devops
Thank you sir its simply wow your hv same my time
You're welcome!
This is one of the simplest easy and clearly articulated CI/CD DevOps tutorial on TH-cam. Awesome. I only have one question, instead of using ssh to connect to the servers created on AWS can i just use the connect button/option provided on the AWS EC2 instance and connect directly?
Did it work for you?
Great Video Asif bhai, I was able to implement it and learned in a basic and easy way how we can integrate sonar qube and Docker to jenkins and publish our website.
one suggestion would be just try to explain when you are doing any steps so that it would give some more clarity, but overall it was good project
Thank you! I'll keep that in mind for next time
Thankyou sir.
You're welcome!
i have followed the same steps
nice bro..
Thank you!
thank you for such a great video. but setting up the whole system requires a lot of effort. like what if among all of these 3 EC2 instances get closed, all configuration have to be re-done. is there a way to handle this situation?
Thanks for the video 😀. for future videos, kindly add timestamps for each step
Good idea! Thanks for the suggestion
Greatly appreciate @AareezAsif, very well explained .Kudos
a great addition to this video would have been to quantify the costs of this CI/CD pipeline on AWS: How much would it cost to run it like on a daily/weekly/monthly basis on ? also would it fit on the AWS free tier ? if yes what would be the performance drawbacks ? it would be great to have the cost analysis part, maybe as a follow up video ?
You can use the AWS pricing calculator to calculate how much it's gonna cost you.
Sure. I'll make a video on it soon
There is a easy way also work with other tools in devops that is you can kuch one master mechine with in that you can download terraform and with the help of that you can lunch more 2 machine as per your needed for sonarque and docker you can use ansible to install those software.
Thanks nice expansion I was follow to create project and I am struck at after install Jenkins you copy key from website for linux but windows which key copy video 9:08 as showed
Please share key thanks in advance
The adds are too much but the coontent of the video is awesome
You could have leveraged the EC2 user data script to automate the software installation and updates as well
Will make a separate video on Ansible from scratch.
Hi,
Can't we just install the docker in the Jenkins instance ? What was the purpose of creating alternate instances ?
Great lab for understanding the basic concepts, is sonarqube applicable to other public or private git repository?
It works on both. But you'll have to copy the jenkins user public key to the github and use ssh URL for cloning the repo with jenkins.
Excellent explanation sir, May I know why for some EC2 we need to give chmod 400 to keypair and not for some EC2?
Because we generated only one keypair and we used it for the three instances
Hey bro, your videos have been incredible for my learning journey. I'm trying to create a project using a Jenkinsfile for automation, and I was wondering if anyone has any advice or tips. It would be awesome if someone could share a Jenkinsfile that they've used for a similar project. Your support is greatly appreciated!
hi sir, i am doing this locally without using aws. untill sonarqube everything is fine but while deploying to docker server i am unable to find the ip addres of docker where i have to add this ip address to server list what am i supposed to do now.?
Hi Asif,
I have few doubts so can we connect ?
what was the reason to create 3 EC2 instance, i think everything could have been done on single instance
Hello Sir, changes showing on jenkins portal but it's not direct pulling on EC2 instance, is it possible to direct pull if any changes occurred
How to resolve wrapper stopped error in sonarqube?
A great video, learned a lot. I am an experienced application developer. Just started with DevOps. Can you please tell why we need to add the Dockerfile in the Working Dir? and in Realtime how we deal with the GitHub actions for docker workflow. Does it mean, for the full automated pipeline flow, the DevOps engineer need to place the Dockerfile with the source code? And in Realtime is it possible to have all the port config and installation steps in the docker file itself? rather specifying a remote shell command ?
Thanks in advance, and please see if you can share a video that will guide the more of Dockerfile and Playbook in Realtime usage(how its get used in industry).
Placing the Dockerfile in the working directory of your project is a common practice in DevOps and containerization.
Including the Dockerfile in your version control system (e.g., Git) alongside your source code helps maintain version consistency. You can track changes to both your application and its containerization configuration together.
You can specify the ports in the Dockerfile but If you want to mount volumes or network then you'll have to create a Docker Compose file.
I have a video on Docker with Ansible in you can achieve the CI/CD using ansible and docker.
Here's the video link:
th-cam.com/video/h7k45phtZgc/w-d-xo.htmlsi=KAVff41XaYkAgMF_
can we use free tier only for all if not what problem will we get?
As a DevOps engineer, do i have to keep creating a new EC2 instance each and every time i have a CI/CD or deployment task to do? because i understand that once we finish a Job we have to stop and terminate all the EC2 instances to avoid further charges? and doing this will change the IP address Now, what if i wanted to retain some settings on my Jenkins which i created on a different occasion and still want to use the setting for a new Job after a few days, I had to terminate that server that hosted the Jenkins
Useful video. Is it possible to deploy this kind of project within an on-premise environment?
Yes! Ofcourse it's possible to deploy this on premises
@@aareezasif Also, how can I gain hands on working experience with Jenkins in real life production environment if I dont have work experience working with Jenkins?
How do we integrate ansible and terraform can u tell that class also