Skip to content

Latest commit

 

History

History
35 lines (27 loc) · 1.62 KB

README.md

File metadata and controls

35 lines (27 loc) · 1.62 KB

Udacity Capstone Project

This is my final Udacity project. It provides the means of deploying a sample nginx application.

Demo

Load Balancer public DNS: a96038234679a4ccd90d04c539201676-951865754.us-west-2.elb.amazonaws.com

Setup

Jenkins setup

  • Install jenkins on a server
  • Download the Blue Ocean and aws pipeline plugin
  • Rolling deployment is implemented as per this manifest file

Kubernetes setup

Provision AWS kubernetes cluster (eks) using cloudformation scripts

# Create network infrastructure first
./create.sh udacity network

# After network stack has been created provision eks cluster
./create.sh udacity eks

Pipeline setup

The pipeline is setup using Blue Ocean and connected to the Github repository

  • A Jenkinsfile describes the tasks in the pipeline
  • A Linting stage checks for errors in the Dockerfile and html files
  • A build stage builds the docker image and pushes to docker hub
  • A deployment stage rolls out the deployment to aws kubernetes cluster

Result