diff --git a/README.md b/README.md index b6bd6d2..3780fc8 100644 --- a/README.md +++ b/README.md @@ -2,20 +2,40 @@ Azure Image Chooser is a [Streamlit](https://streamlit.io) application that allows users to select Azure VM images from the Azure Marketplace. -It is in its preliminary version and is subject to development and change. It is provided here for you convenience and may not include all features or functionality of the final product. +Azure Image Chooser is written in Python and requires Python interpreter. At the time of writing this, Python 3.13 is the latest. -Azure Image Chooser is written in Python and requires Python interpreter. At the time of writing this, Python 3.13 is the latest. Execute the following commands to run the app: +You can run it on your local machine or deploy to any platform that runs containers. A Docker file and Terraform code to deploy to the Azure are provided. + +## Running on a local machine + +Create a Python development environment file `.env`: + +```shell +AZURE_SUBSCRIPTION_ID="subscription_id" +AZURE_CLIENT_ID="client_id" +AZURE_CLIENT_SECRET="client_secret" +AZURE_TENANT_ID="tenant_id" +AZURE_LOCATION="westeurope" +``` + +> NOTE: Replace the placeholder values with your actual values. Omit `AZURE_CLIENT_ID`, `AZURE_CLIENT_SECRET`, and `AZURE_TENANT_ID` if you are using Azure CLI authentication. + +Execute the following commands to run the app: ```shell python3 -m venv .venv -.venv/bin/python -m pip install pip --upgrade -.venv/bin/pip install streamlit azure-identity azure-mgmt-compute -.venv/bin/streamlit run image-chooser.py +source .venv/bin/activate +python -m pip install pip --upgrade +pip install -r requirements.txt +cd app +streamlit run image-chooser.py ``` -You have to be authenticated in Azure CLI. The app will block terminal and start a web server. Follow the instructions in the terminal to access the app. +The app will block terminal and start a web server. Follow the instructions in the terminal to access the app. -## Add Certificate Binding +## Add Certificate Binding for Azure Deployment + +Unfortunately, as of now, the Terraform Azure Resource Manager Provider does not support binding certificates to container apps. You can still bind the certificate using the Azure CLI. ```shell # Find the certificate name