From e0243e0f656bafc3b0acbeeb61a1f16e58b38d4c Mon Sep 17 00:00:00 2001 From: chandra kothapally Date: Thu, 28 Mar 2019 00:05:39 -0500 Subject: [PATCH 1/7] minikube test app --- Dockerfile | 7 +++++++ README.md | 1 + scale_deployment.png | Bin 0 -> 83709 bytes test-app/index.html | 5 +++-- 4 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 Dockerfile create mode 100644 scale_deployment.png diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..8862969 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,7 @@ +# https://docs.docker.com/engine/reference/builder/ + +# base this image on the PHP image that comes with Apache https://hub.docker.com/_/php/ +FROM httpd:latest + +# Run Apache +ADD test-app/ /usr/local/apache2/htdocs/ diff --git a/README.md b/README.md index de3b0a2..a62c109 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,7 @@ The purpose of this repo is to house the Code to be used for technical screen of We are looking to see what you are doing, We are not going to do anything to trick you but put your best foot forward. Demonstrate a working demo, feel free to exhibit your skills. +![alt text](https://github.com/chandrakothapally/webdeploy/scale_deployment.png) ### diff --git a/scale_deployment.png b/scale_deployment.png new file mode 100644 index 0000000000000000000000000000000000000000..00a27785725baf43cfd3bfde358d707fdbc4dd0b GIT binary patch literal 83709 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 G2~7Y3n}|UG literal 0 HcmV?d00001 diff --git a/test-app/index.html b/test-app/index.html index f3bfea8..159b74a 100644 --- a/test-app/index.html +++ b/test-app/index.html @@ -6,7 +6,8 @@ An HTML5 Test Page - + +

Updated pod

@@ -16,4 +17,4 @@ - \ No newline at end of file + From d1be4586f5c48a5407b5d7d1380e93de53cfc98e Mon Sep 17 00:00:00 2001 From: chandrakothapally Date: Thu, 28 Mar 2019 00:17:36 -0500 Subject: [PATCH 2/7] modify README.md --- README.md | 39 ++++++++++++++++++++++++++------------- 1 file changed, 26 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index a62c109..fbbdb5f 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,35 @@ -# webdeploy -The purpose of this repo is to house the Code to be used for technical screen of SRE candidates +Steps to Re-produce stateless application deployment and rolling updates. -## -1. Demonstrate three instances of this website running -2. Demonstrate procedures for deploying an updated change to the instances from #1 -3. Provide code as a pull request to this repo -4. Solutions can be in the language of your choice -5. Technology of your choice +#Create a Dockerfile to add the frontend assets and build the image from root directory + docker build . +#Create a docker private or local registry to push the image updates +#Login to docker registry to authenticate yourself +docker login (prompts for username and password) -### Some Suggestions +#Tag and push the image to the registry +docker tag $IMAGEID repo/image:tag +docker push repo/image:tag -We are looking to see what you are doing, We are not going to do anything to trick you but put your best foot forward. Demonstrate a working demo, feel free to exhibit your skills. +# To run a kubernetes cluster with the container pushed to local or private registry +kubectl run $container --image=repo/image:tag --port=80 -![alt text](https://github.com/chandrakothapally/webdeploy/scale_deployment.png) +# To Expose as a service +kubectl expose deployment $container --type=NodePort -### +# To open the exposed endpoint in the browser +minikube service $container +(This will open the html page on the browser) -[How to submit a pull request](https://help.github.com/articles/creating-a-pull-request) +#View the kubernetes dashboard via +minikube dashboard + +# For any rolling updates, Update the image to latest version and push it to registry again +kubectl set image deployment/$container $container =repo/image:tag +(Leveraging rolling updates will benefit in Zero downtime) + +#To achieve a multi instance pod, we can scale the deployment to the number desired. + +![alt text](https://github.com/chandrakothapally/webdeploy/blob/master/scale_deployment.png) From f559a53345de5faae545efd2e5c8018aae945a86 Mon Sep 17 00:00:00 2001 From: chandrakothapally Date: Thu, 28 Mar 2019 00:19:21 -0500 Subject: [PATCH 3/7] modify README.md --- README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.md b/README.md index fbbdb5f..c901dc1 100644 --- a/README.md +++ b/README.md @@ -2,28 +2,35 @@ Steps to Re-produce stateless application deployment and rolling updates. #Create a Dockerfile to add the frontend assets and build the image from root directory + docker build . #Create a docker private or local registry to push the image updates #Login to docker registry to authenticate yourself + docker login (prompts for username and password) #Tag and push the image to the registry + docker tag $IMAGEID repo/image:tag docker push repo/image:tag # To run a kubernetes cluster with the container pushed to local or private registry + kubectl run $container --image=repo/image:tag --port=80 # To Expose as a service + kubectl expose deployment $container --type=NodePort # To open the exposed endpoint in the browser + minikube service $container (This will open the html page on the browser) #View the kubernetes dashboard via + minikube dashboard # For any rolling updates, Update the image to latest version and push it to registry again From a3a691387b990153a7576e0d823d11ffd8b528af Mon Sep 17 00:00:00 2001 From: chandrakothapally Date: Thu, 28 Mar 2019 00:23:11 -0500 Subject: [PATCH 4/7] modify README.md --- README.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index c901dc1..59d86d0 100644 --- a/README.md +++ b/README.md @@ -1,42 +1,42 @@ Steps to Re-produce stateless application deployment and rolling updates. -#Create a Dockerfile to add the frontend assets and build the image from root directory +# Create a Dockerfile to add the frontend assets and build the image from root directory # docker build . -#Create a docker private or local registry to push the image updates +# Create a docker private or local registry to push the image updates # -#Login to docker registry to authenticate yourself +# Login to docker registry to authenticate yourself # docker login (prompts for username and password) -#Tag and push the image to the registry +# Tag and push the image to the registry # docker tag $IMAGEID repo/image:tag docker push repo/image:tag -# To run a kubernetes cluster with the container pushed to local or private registry +# To run a kubernetes cluster with the container pushed to local or private registry # kubectl run $container --image=repo/image:tag --port=80 -# To Expose as a service +# To Expose as a service # kubectl expose deployment $container --type=NodePort -# To open the exposed endpoint in the browser +# To open the exposed endpoint in the browser # -minikube service $container -(This will open the html page on the browser) + minikube service $container + (This will open the html page on the browser) -#View the kubernetes dashboard via +# View the kubernetes dashboard via # minikube dashboard -# For any rolling updates, Update the image to latest version and push it to registry again +# For any rolling updates, Update the image to latest version and push it to registry again # kubectl set image deployment/$container $container =repo/image:tag (Leveraging rolling updates will benefit in Zero downtime) -#To achieve a multi instance pod, we can scale the deployment to the number desired. +# To achieve a multi instance pod, we can scale the deployment to the number desired. # ![alt text](https://github.com/chandrakothapally/webdeploy/blob/master/scale_deployment.png) From 72a7df6e5b4d5ba49ce93dd3972ab713a1125cdb Mon Sep 17 00:00:00 2001 From: chandrakothapally Date: Thu, 28 Mar 2019 00:24:33 -0500 Subject: [PATCH 5/7] modify README.md --- README.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 59d86d0..2fd5387 100644 --- a/README.md +++ b/README.md @@ -1,42 +1,42 @@ -Steps to Re-produce stateless application deployment and rolling updates. +# Steps to Re-produce stateless application deployment and rolling updates. # -# Create a Dockerfile to add the frontend assets and build the image from root directory # +## Create a Dockerfile to add the frontend assets and build the image from root directory ## docker build . -# Create a docker private or local registry to push the image updates # +## Create a docker private or local registry to push the image updates ## -# Login to docker registry to authenticate yourself # +## Login to docker registry to authenticate yourself ## docker login (prompts for username and password) -# Tag and push the image to the registry # +## Tag and push the image to the registry ## docker tag $IMAGEID repo/image:tag docker push repo/image:tag -# To run a kubernetes cluster with the container pushed to local or private registry # +## To run a kubernetes cluster with the container pushed to local or private registry ## kubectl run $container --image=repo/image:tag --port=80 -# To Expose as a service # +## To Expose as a service ## kubectl expose deployment $container --type=NodePort -# To open the exposed endpoint in the browser # +## To open the exposed endpoint in the browser ## minikube service $container (This will open the html page on the browser) -# View the kubernetes dashboard via # +## View the kubernetes dashboard via ## minikube dashboard -# For any rolling updates, Update the image to latest version and push it to registry again # +## For any rolling updates, Update the image to latest version and push it to registry again ## kubectl set image deployment/$container $container =repo/image:tag (Leveraging rolling updates will benefit in Zero downtime) -# To achieve a multi instance pod, we can scale the deployment to the number desired. # +## To achieve a multi instance pod, we can scale the deployment to the number desired. ## ![alt text](https://github.com/chandrakothapally/webdeploy/blob/master/scale_deployment.png) From 76891181c9e62b09217abd81a32da236f1ad298c Mon Sep 17 00:00:00 2001 From: chandrakothapally <38508656+chandrakothapally@users.noreply.github.com> Date: Wed, 17 Aug 2022 13:02:41 -0400 Subject: [PATCH 6/7] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2fd5387..d51040e 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ docker login (prompts for username and password) docker tag $IMAGEID repo/image:tag docker push repo/image:tag - +sadxacacaddc ## To run a kubernetes cluster with the container pushed to local or private registry ## kubectl run $container --image=repo/image:tag --port=80 From 47f7fb54532ab1bbc8df5d661d105748e12bc55c Mon Sep 17 00:00:00 2001 From: moodybugzz <38508656+moodybugzz@users.noreply.github.com> Date: Tue, 23 Aug 2022 17:49:03 -0400 Subject: [PATCH 7/7] Create test.yml --- ml-common/test.yml | 1 + 1 file changed, 1 insertion(+) create mode 100644 ml-common/test.yml diff --git a/ml-common/test.yml b/ml-common/test.yml new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/ml-common/test.yml @@ -0,0 +1 @@ +