Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cyse7125-su24-team10/ami-jenkins
AWS AMI build using HashiCorp Packer w/ Jenkins pre-configured and NGINX as a reverse proxy.
https://github.com/cyse7125-su24-team10/ami-jenkins
aws jenkins nginx-reverse-proxy packer
Last synced: about 1 month ago
JSON representation
AWS AMI build using HashiCorp Packer w/ Jenkins pre-configured and NGINX as a reverse proxy.
- Host: GitHub
- URL: https://github.com/cyse7125-su24-team10/ami-jenkins
- Owner: cyse7125-su24-team10
- License: mit
- Created: 2024-05-26T03:53:39.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-09-09T19:22:57.000Z (4 months ago)
- Last Synced: 2024-09-13T06:59:50.156Z (4 months ago)
- Topics: aws, jenkins, nginx-reverse-proxy, packer
- Language: Groovy
- Homepage:
- Size: 39.1 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ami-jenkins
CI/CD Infrastructure using jenkins[![Packer](https://img.shields.io/badge/Packer-02A8EF.svg?style=for-the-badge&logo=Packer&logoColor=white)](https://www.packer.io/) [![NGINX](https://img.shields.io/badge/NGINX-009639.svg?style=for-the-badge&logo=NGINX&logoColor=white)](https://www.nginx.com/) [![HashiCorp](https://img.shields.io/badge/HashiCorp-000000.svg?style=for-the-badge&logo=HashiCorp&logoColor=white)](https://www.hashicorp.com/) [![GitHub Actions](https://img.shields.io/badge/GitHub%20Actions-2088FF.svg?style=for-the-badge&logo=GitHub-Actions&logoColor=white)](https://github.com/features/actions) [![Let's Encrypt](https://img.shields.io/badge/Let's%20Encrypt-003A70.svg?style=for-the-badge&logo=Let's-Encrypt&logoColor=white)](https://letsencrypt.org/) [![Jenkins](https://img.shields.io/badge/Jenkins-D24939.svg?style=for-the-badge&logo=Jenkins&logoColor=white)](https://www.jenkins.io/)
# Jenkins AMI with Packer
This project contains a Packer configuration for building an Amazon Machine Image (AMI) tailored for Jenkins with an Nginx configuration. The configuration uses the amazon-ebs builder to create the AMI and provisions it with the necessary software and configurations. Nginx is used as a reverse proxy for Jenkins.
## Prerequisites
Before you begin, ensure you have the following installed:
- [Packer](https://www.packer.io/) version 1.2.8 or higher
- AWS account with the necessary IAM permissions setup at organization level for github actions### Usage
To build the AMI, follow these steps:
1. Clone the repository and navigate to the directory:
```sh
git clone [email protected]:cyse7125-su24-team10/ami-jenkins.git
cd ami-jenkins
```
2. Intialize packer```sh
packer init ./packer/
```3. Validate the Packer template:
```sh
packer validate ./packer/
```3. Build the AMI:
```sh
packer build ./packer/
```### jenkins credentials setup
1. Create Personal Access tokens on github
2. add a global username password credentials id on jenkins manage credentials page
3. add username github username and password the PAT and save it
4. make sure the jenkins user is added to docker user group