Spaces:
Sleeping
Sleeping
File size: 3,024 Bytes
dc0e4d1 3545a4b dc0e4d1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
import streamlit as st
st.markdown("""
Streamlit: https://huggingface.co/spaces/DockerTemplates/streamlit-docker-example
Gradio: https://huggingface.co/spaces/sayakpaul/demo-docker-gradio
HTTP w GO: https://huggingface.co/spaces/XciD/test-docker-go?q=Adrien
Secrets: https://huggingface.co/spaces/DockerTemplates/secret-example
Fast API: https://huggingface.co/spaces/DockerTemplates/fastapi_t5
# Github Actions Deploy to ACA:
π Create a Dockerfile for Gradio deployment π
1οΈβ£ Start by specifying the base image for your container. For Python:
FROM python:3.8-slim-buster
2οΈβ£ Set the working directory for the container and copy the necessary files:
WORKDIR /app
COPY . /app
3οΈβ£ Install the necessary dependencies, including Gradio:
RUN pip install --upgrade pip && \
pip install gradio
4οΈβ£ Specify the command to run when the container starts:
CMD ["python", "app.py"]
:rocket: Build and push your container image to Azure Container Registry :rocket:
:green_book: Set up a GitHub Actions workflow for deployment :green_book:
Use azure/login action for Azure authentication and azure/container-apps-deploy-action for deployment. Provide necessary inputs like container app name, Azure Container Registry name, and container image tag.
Here's an example GitHub Actions workflow:
name: Deploy to Azure Container Apps
on: push: branches: - main
env: AZURE_CONTAINER_APP_NAME: AZURE_CONTAINER_REGISTRY_NAME: IMAGE_TAG: ${{ github.sha }}
jobs: deploy: runs-on: ubuntu-latest steps: - name: Check out code uses: actions/checkout@v2
- name: Login to Azure
uses: azure/login@v1
with:
creds: ${{ secrets.AZURE_CREDENTIALS }}
- name: Deploy to Azure Container Apps
uses: azure/container-apps-deploy-action@v1
with:
containerAppName: ${{ env.AZURE_CONTAINER_APP_NAME }}
imageName: ${{ env.AZURE_CONTAINER_REGISTRY_NAME }}.azurecr.io/myimage:${{ env.IMAGE_TAG }}
:arrow_forward: **After your GitHub Actions workflow is set up, follow these steps to get your app running on Azure Container Apps** :arrow_forward:
5οΈβ£ **Commit and push your changes** :file_folder:
Once you've made all necessary changes to your Dockerfile and GitHub Actions workflow file, commit and push them to your repository.
```bash
git add .
git commit -m "Setup Dockerfile and GitHub Actions workflow"
git push origin main
6οΈβ£ Watch your GitHub Actions workflow π
Go to the "Actions" tab in your GitHub repository to see your workflow in action. If everything is set up correctly, you should see your workflow running and completing without errors.
7οΈβ£ Check your app on Azure Container Apps π
Once the GitHub Actions workflow has completed, your app should be deployed to Azure Container Apps. You can check the status of your app in the Azure portal.
8οΈβ£ Enjoy your Gradio app running smoothly on Azure Container Apps π
You've successfully deployed your Gradio app to Azure Container Apps using a Docker container and GitHub Actions!
""") |