DevOps Project Documentation
Using GitHub, Aws-ubuntu machine, Jenkins(CI/CD), Docker
Table of contents
- Deployment of a to-do node.js application via CI/CD pipeline
- Step-1. setup the server of ec2 in aws
- Step-2. Install docker and Jenkins in Ubuntu machine to deploy the application
- Now see the dashboard of Jenkins
- Step-3.Now Integrate Github and Jenkins using SSH Webhooks
- Step-4. Now configure the freestyle project in Jenkins
Deployment of a to-do node.js application via CI/CD pipeline
Since learning the prompts-only theory is not sufficient to get a proper understanding of a term till we're doing hands-on in it. Doing Hands-on can give desirable results at which point we're in to analyze our capabilities on that particular terminology. With this spectacular set of mind, I came up here containing the first project on CI/CD pipeline using some sets' of tools.
Step-1. setup the server of ec2 in aws
unlike going through the process of instance creation you will get to know automatically that first to put the name of EC2 Instance and choose ami i.e Linux ubuntu machine.
Step-2. Install docker and Jenkins in Ubuntu machine to deploy the application
In DevOps some open-source third-party tools would be required to deploy an application on cloud premises which can manage over the pipelines while running the application.
So at first we need to install docker and give permission to it using the following commands in case you are using on a cloud premises machine:
sudo apt update -y
sudo apt-get install docker.io
sudo usermod -aG docker.io $USER
Then restart the machine using cmd
sudo systemctl reboot
Now install Jenkins in the machine by following process:
Jenkins installation follow this link:
Easy Jenkins Installation Guide
One process will be there after this screen to set up an admin username and password that needs to be at the time of login in Jenkins, so due to confidential data am not sharing that image.
Now see the dashboard of Jenkins
Step-3.Now Integrate Github and Jenkins using SSH Webhooks
Firstly go with the instance go to the SSH directory and create an SSH key to connect the instance using GitHub securely.
cd /etc/ssh
ssh key-gen
Step-4. Now configure the freestyle project in Jenkins
Configure all the setups using desirable inputs to the project source code management documentation, and apply over the file to build.
After build stage it will show the console output that would be referred to like this:
Then follow the whole console output and as per the result go with the workspace under instance and run the file as docker build and here you go that your application is running. However, if you wanna do this CD in automated mode then you may instruct all the commands related to deploying the application on the docker container to the build configuration after consoling the output.
At last, follow the process to deploy an application over docker using port mapping. So we have completed the CI/CD process of a nodejs application using Github, EC2, Jenkins and Docker.
The next will be uploaded soon.....!