{"id":20179080,"url":"https://github.com/pratikshinde55/jenkins-aws-web-deployment","last_synced_at":"2026-05-23T16:41:40.604Z","repository":{"id":233107705,"uuid":"786048625","full_name":"Pratikshinde55/jenkins-aws-web-deployment","owner":"Pratikshinde55","description":"Facilitating continuous deployment from developer commits on GitHub to live web content via Jenkins on AWS","archived":false,"fork":false,"pushed_at":"2025-01-03T08:04:15.000Z","size":144,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-13T16:50:28.415Z","etag":null,"topics":["continous-deployment","jenkins","jenkins-git"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Pratikshinde55.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-13T09:13:26.000Z","updated_at":"2025-01-03T08:04:19.000Z","dependencies_parsed_at":"2025-01-03T08:26:31.918Z","dependency_job_id":"700d4266-7787-4b23-a3e8-5abf33976602","html_url":"https://github.com/Pratikshinde55/jenkins-aws-web-deployment","commit_stats":null,"previous_names":["pratikshinde55/jenkins"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pratikshinde55%2Fjenkins-aws-web-deployment","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pratikshinde55%2Fjenkins-aws-web-deployment/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pratikshinde55%2Fjenkins-aws-web-deployment/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pratikshinde55%2Fjenkins-aws-web-deployment/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Pratikshinde55","download_url":"https://codeload.github.com/Pratikshinde55/jenkins-aws-web-deployment/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241616683,"owners_count":19991542,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["continous-deployment","jenkins","jenkins-git"],"created_at":"2024-11-14T02:25:00.323Z","updated_at":"2026-05-23T16:41:35.578Z","avatar_url":"https://github.com/Pratikshinde55.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Automated Web Deployment Pipeline with Jenkins on AWS \n\n- Set-up of Jenkins on the AWS Cloud use this link to configure Set-up: [Jenkins-SetUp-onAWS](https://github.com/Pratikshinde55/Jenkins-Setup-onAWS.git)\n\nWorkFlow Structure:\n\n![hgjhgjhgyjhchjchjcv (1)](https://github.com/Pratikshinde55/jenkins-aws-web-deployment/assets/145910708/bea20297-b207-4658-a93c-c45d828ed175)\n\nStreamlining web development workflows by automating code deployment from GitHub to an Apache web server using Jenkins on AWS,\nensuring seamless updates without manual intervention.\n\n - About Infrasturcture of this project(use case):\n\nDeveloper create code and upload code on SCM GitHub , that code(webpage) will deploy webserver and this webserver can access by Client from google.\n\nBy Using jenkins i do this set-up automatic:\n\n- Use following steps for do above set-up automatic by using 'Jenkins'\n\n### Step-1: [Push Code from local to SCM GitHub]\nI use Git Bash on local laptop for create code as developer. This code is push to gitHub.\n\n- Hooks: **Here i use Hooks which make automation that is whenever i change code and commit that code it automatically update on GitHub.**\n\nCreate workspace/working area:\n\n     cd documents\n     mkdir jenkins-2024\n     cd jenkins-2024\n     mkdir myproject\n     cd myproject\n      \nInitialize Git repo command:\n     \n     git init myproject\n     \nCreate Webpage:\n      \n     notepad index.html\n     \nAddeds to tracking/stagging area of git:\n     \n     git add index.html\n\nCommit the file/webpage:\n \n     git commit index.html -m \"mychange\"\n\n- Now, we create empty repo on GitHub for push local code . NOTE: Don't use README file.\n\nOn GitHub there commands give for push code locally.\n\n     git remote add origin https://-----------\n     git branch -M main\n     git push -u origin main\n\nNow 1st time we push then need login we use command for login:\n\nCommand for login to the GitHub from Local:\n\n     git config --global user.email \"____\" \u003c\u003c--  email GitHub\n     git config --global user.name \"______\" \u003c\u003c--   password GitHub\n\nNow, Developer set-up done ( push local code to GitHub SCM ):\n\n- Note:\n\nPushing code is manual but we make this automatic by using Git \"Hook\" , In Hooks folder create new post-commit file for automation.\nas soon we commit the new code that code automatically push to GitHub this done by post-commit Hooks. (Below screenshot refer)\n\n![Screenshot 2024-04-13 174200](https://github.com/Pratikshinde55/Jenkins/assets/145910708/c41d2ed1-3aec-4dfd-b86a-a187ec5001b6)\n\nNow code change \u0026 need to only commit that code file ( Fully Automatic way to push code):\n    \n    git commit index.html -m \"hooksactivate\"\n\n![Screenshot 2024-04-13 174650](https://github.com/Pratikshinde55/Jenkins/assets/145910708/3dd4d2ef-485e-401c-9eac-f5c6b8621580)\n\n - Note:- Whenever i change code and commit this code automatically updated on GitHub.\n\n### Step-2: [On Jenkins Webserver job]\nNow on jenkins i created two Jobs \n- 1st job (webserver) that create websever setup by using jenkins.\n- 2nd job (gitHubjob1) that pull code from gitHub and deploy that Code on webserver location /var/www/html .\n\n\n#### 1st Create Webserver job :\non GitHub create new job named as webserver using freestyle \u0026 in Build step put below screenshot steps.\n\n![Screenshot 2024-04-13 175659](https://github.com/Pratikshinde55/Jenkins/assets/145910708/423f0348-6220-4f4a-9e7f-93612c46e603)\n\n- Note: \n\n**For this we need jenkins have root level or admin level power so we give power to jenkins then build webserver job, for this we go to Ec2 instance where jenkins \ninstalled or run and give ALL power.**\n     \n     vim /etc/sudoers\n\n![Screenshot 2024-04-13 180236](https://github.com/Pratikshinde55/Jenkins/assets/145910708/3352d74f-0fde-4aa8-9990-95256bd4cbef)\n\nNow, Build our webserver job, this jenkins job download Https webserver and start Httpd service. \n\n![Screenshot 2024-04-13 180534](https://github.com/Pratikshinde55/Jenkins/assets/145910708/6e9486b3-b0a2-4cfe-b6a7-34e7ac2ee9e0)\n\nIn webserver need webpage , we pull webpage from gitHub using new Job. \n\n### Step-3: [On Jenkins GitHubjob1]\n\n#### 2nd Job: \nNow here i create new job which pull the code from GitHub and Deploy that code 'webpage' to apache webserver DocumetRoot location that is /var/www/html.\n\n- Note:\n\nHere use GitHub repo URL and \"Branches to build\" same where our code kept on GitHub in my case main is branch.\n\n![Screenshot 2024-04-13 181522](https://github.com/Pratikshinde55/Jenkins/assets/145910708/5990ca24-38f8-46b2-ae85-f7295edfd731)\n\n-Note:\n\nBut every time new code push on GitHub by developer then i need to Build my job again this is make slow or manual because of this i use \"triggers\"\nHere use \"Poll SCM\" Schedule for every min. means this helps to automatically pull code from gitHub not need to manually Build job, Whenever new code on GitHub \nthen **Poll SCM trigger** automatically download that code.\n\n![Screenshot 2024-04-13 181820](https://github.com/Pratikshinde55/Jenkins/assets/145910708/3a90bd78-7997-452e-979f-7b5c3ac4ee53)\n\n - Note: \n\nThat downloaded code is save in jenkins workspace of that job.(This save after when we 1st time Build job then automatically it updated by Poll SCM)\n\n![Screenshot 2024-04-13 182315](https://github.com/Pratikshinde55/Jenkins/assets/145910708/ec01e703-05d4-46f6-a5d3-c04d2fa02f59)\n\nNow, last step of job is to copy code or webpage which is downloaded from GitHub, This downloaded code copy to **/var/www/html**\n\n![Screenshot 2024-04-13 182528](https://github.com/Pratikshinde55/Jenkins/assets/145910708/045d9773-c284-47a8-a4df-fd2e05a1e8a3)\n\nNow apply \u0026 save job.\n\n - Note:\n**This job run on Jenkins and Jenkins is on EC2 amazon linux, This job run only if in our host amazon linux2 EC2 have Git. So we need to install Git on amazon \nlinux2, Where Jenkins installed.**\n     \n     sudo yum install git -y\n\n![Screenshot 2024-04-13 183152](https://github.com/Pratikshinde55/Jenkins/assets/145910708/ab9e56bb-0593-48ee-a313-d32a479a7a0e)\n\n\nNow we need run 1st time manually job in my case name of job is GitHubjob1, after 1st time we run that job automatically run when new code updated on gitHub.\n\nClick on Build now button of Jenkins of Githubjob1\n\nAll set-up is done now I can change in code as developer from local laptop using Git-Bash app and commit that code, After commit new code automatically push to \nGitHub by Hooks \u0026 whenever that new code go to GitHub, On Jenkins Job2 named as GitHubjob1 is automatically run using Poll SCM trigger.\n\n### Step-4: [On Browser]\n\nNow check connect Webserver from browser for view Webpage or Content:\n\nPublic Ip of instance in my case public ip of EC2 is - \"http://52.66.237.252/\"\n\n - Note :\n\n  EC2 Instance Inbound rule must allow port no 80 that is http:\n\n![Screenshot 2024-04-13 184308](https://github.com/Pratikshinde55/Jenkins/assets/145910708/90e71a4f-b593-4a2c-8246-cd6c69c2bade)\n\n - Note:\n\nWhenever New Webpage (code from developer to GitHub) comes then Jenkins job work and new webpage come by Fully Automation no need to manual update or Build job \nagain and again:\n\n![image](https://github.com/Pratikshinde55/Jenkins/assets/145910708/c726e158-b74f-451b-9413-c79644f805ac)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpratikshinde55%2Fjenkins-aws-web-deployment","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpratikshinde55%2Fjenkins-aws-web-deployment","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpratikshinde55%2Fjenkins-aws-web-deployment/lists"}