This is a simple demo app built using Streamlit a Python library. The purpose of this app is to practice Python and also implement Cloud Native tools.
Follow these steps to build and deploy the application on your own Kubernetes cluster
Run
git clone https://github.com/pavangudiwada/gallery-app.git
The process is automated using a tool called Skaffold.
Run skaffold run
. Skaffold builds the containers using Docker and deploys it to the Kubernetes cluster connected to your system.
Run kubectl get nodes -o wide
to get the IP address of your node.
Then go to http://Node_IP:3007
to access the application.
- Git
- Pyenv, virtualenv
- Python
- Streamlit
- Logging
- OS
- prometheus-client
- Poetry
- Skaffold
- Docker
- Kubernetes
- git init to initialize the project
- git add filename to add the file
- git commit -m "Message" to commit the added file.
- pyenv is used to create a virtual environment for local testing. It uses Python 3.11.5
- virtualenv was used to create a virtual environment based on Python 3.11.5
- Python version 3.11.5 is used with
- Steamlit - A module to create webapplications without having to worry about HTML, CSS and JS
- OS - To get file paths
- Logging - To log things happening with the application
- Prometheus Client - Used to expose application metrics for Prometheus over /metrics/ endpoint.
- It's like pip, used to manage dependencies and packages.
- Used to simplify building and deploying during developement.
- Building and deploying application as containers
- Deploying containers and for container orchestration