Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
NotificationsYou must be signed in to change notification settings

dhiman23/nike-ci-cd

Repository files navigation

This project is a ReactJS-based clone of the Nike ecommerce website. It aims to replicate the core functionality and design of the original site, providing users with a familiar experience.nike-clone

🪧 Diagram

ingress

Nike React Application - DevOps ImplementationThis repository contains the DevOps implementation for a React-based Nike application. The project showcases a fully automated CI/CD pipeline, leveraging various DevOps tools and practices to achieve continuous integration, delivery, and deployment.

Table of ContentsProject OverviewInfrastructure SetupTerraform & GitHub ActionsContinuous IntegrationJenkins IntegrationDocker, Trivy, SonarQubeContinuous DeploymentGitOps with ArgoCDMonitoring & AlertsHow to Get StartedContributingLicenseProject OverviewThis project DevOpsifies a React-based Nike application, incorporating the following features:

Automated Infrastructure Provisioning: Using Terraform scripts, provision an EKS cluster, Jenkins server, and a monitoring server.Continuous Integration: Jenkins is configured to integrate various tools like Docker, Trivy, and SonarQube to manage the CI pipeline.Continuous Deployment: Using a GitOps approach, ArgoCD is employed to automatically deploy Kubernetes manifests, including services, ingresses, and deployments.Monitoring: Implemented monitoring using Prometheus and Grafana.Infrastructure SetupTerraform & GitHub ActionsThe infrastructure for the application is managed using Terraform. GitHub Actions is used to automate the provisioning process.

GitHub Actions: Automates the execution of Terraform scripts to provision an EKS cluster, Jenkins server, and monitoring server in AWS.Terraform: Infrastructure as Code (IaC) tool used for setting up the Kubernetes cluster (EKS), Jenkins, and monitoring tools.Key Terraform ResourcesEKS Cluster: Managed Kubernetes cluster for deploying the application.Jenkins Server: Automates the CI pipeline, integrates with Docker, Trivy, SonarQube, and more.Monitoring Server: Provisioned to collect and visualize metrics and logs.Continuous IntegrationJenkins IntegrationJenkins is used for automating the CI part of the project. The following tools are integrated into the pipeline:

Docker: Used to containerize the React application.Trivy: A security scanner for Docker images, ensuring that the images are free from vulnerabilities.SonarQube: Static code analysis tool that ensures code quality.Docker Image TaggingThe CI pipeline automatically updates the Docker image tag based on the build number from Jenkins. This updated image is then pushed to the Docker registry.

Helm DeploymentThe CI pipeline updates the Helm chart with the new Docker image tag. This allows the application to be deployed with the latest image in the Kubernetes cluster.

Continuous DeploymentGitOps with ArgoCDArgoCD is used to automate the deployment of the application in the Kubernetes cluster. The GitOps approach ensures that the state of the cluster matches the desired state defined in the Git repository.

Kubernetes Manifests: Managed using Helm charts, including Services, Ingresses, and Deployments.ArgoCD: Continuously monitors the Git repository and applies any changes to the Kubernetes cluster.Monitoring & AlertsPrometheus: Collects metrics from the Kubernetes cluster and the application.Grafana: Visualizes the collected metrics and provides dashboards for monitoring.How to Get StartedClone the Repository:

bashCopy codegit clonehttps://github.com/Dhiman23/nike-ci-cd.gitcd nike-ci-cdProvision Infrastructure:

Ensure that the necessary environment variables are set up for Terraform.Trigger the GitHub Action to provision the infrastructure.Setup Jenkins:

Access the Jenkins server and set up the pipeline using the provided Jenkinsfile.Deploy the Application:

ArgoCD will automatically deploy the application once the CI pipeline is complete.Monitor the Application:

Access Grafana dashboards to monitor the application’s performance and health.ContributingContributions are welcome! Please submit a pull request or open an issue to discuss your ideas.

LicenseThis project is licensed under the MIT License - see the LICENSE file for details.

👨‍💻 Author

  • this project is Devopsified by SAJAL DHIMAN

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp