/cloud-miniproject-01

Exercise dockerized app development and deployment on AWS EKS using Jenkins

Building and deploying flask apps in Docker using Jenkins and Kubernetes

This repo is for exercise only and contains Jenkinsfiles for dockerizing and running flask apps in various ways. The repo has multiple branches for various scenarios and they are built separatelly in Jenskins.

Branch (git checkout <BRANCH>):

  • test-docker The Jenkins builds the dokcer image, and runs it on the same instance. In this case the last stage is open untill the build is not stopped. The app can be available from the public address url of the instance and the defined port.

  • test-kubernetes The build in this branch defines a kubernetes cluster in one stage of the jenkins build, and in another one deploys the defined docker image. After the last stage is finished, the app that is now running in the kubernetes cluster, can be reached via the load balancer's public address (and defined port).

  • test-systemd Building with Jenkind and setting up systemd for the app server

Screenshots

1. test-docker branch build

2. test-docker branch app running

3. test-kubernetes, the app is deployed into a EKS cluster, with the last stage having a timer (with the sleep linux function, which shuts down the cluster after specified time)