| #!/bin/bash |
| |
|
|
| set -e |
|
|
| echo "π AI Quiz Bot - Deployment Helper" |
| echo "==================================" |
| echo "" |
|
|
| |
| if ! command -v docker &> /dev/null; then |
| echo "β Docker is not installed. Please install Docker first." |
| echo " Visit: https://www.docker.com/products/docker-desktop" |
| exit 1 |
| fi |
|
|
| echo "β
Docker is installed" |
|
|
| |
| echo "" |
| echo "What would you like to do?" |
| echo "1) Build Docker image locally" |
| echo "2) Run Docker container (docker-compose)" |
| echo "3) Stop Docker container" |
| echo "4) View logs" |
| echo "5) Clean up (remove images/containers)" |
| echo "6) Deploy to Hugging Face Spaces (prepare files)" |
| echo "" |
|
|
| read -p "Choose option (1-6): " choice |
|
|
| case $choice in |
| 1) |
| echo "" |
| echo "π¨ Building Docker image..." |
| docker build -t aiquiz-bot:latest . |
| echo "β
Build complete!" |
| echo "" |
| echo "Next, run: docker-compose up" |
| ;; |
| |
| 2) |
| echo "" |
| echo "π Starting Docker container..." |
| docker-compose up -d |
| echo "β
Container started!" |
| echo "" |
| echo "View logs: docker-compose logs -f" |
| echo "Stop container: docker-compose down" |
| ;; |
| |
| 3) |
| echo "" |
| echo "βΉοΈ Stopping Docker container..." |
| docker-compose down |
| echo "β
Container stopped!" |
| ;; |
| |
| 4) |
| echo "" |
| echo "π Showing logs..." |
| docker-compose logs -f |
| ;; |
| |
| 5) |
| echo "" |
| echo "π§Ή Cleaning up..." |
| docker-compose down -v |
| docker rmi aiquiz-bot:latest 2>/dev/null || true |
| echo "β
Cleanup complete!" |
| ;; |
| |
| 6) |
| echo "" |
| echo "π¦ Preparing files for Hugging Face Spaces..." |
| echo "" |
| echo "Files to upload to HF Spaces:" |
| echo " β
bot.py" |
| echo " β
Dockerfile" |
| echo " β
requirements.txt" |
| echo " β
README.md" |
| echo " β .env (DON'T upload - use HF Secrets instead)" |
| echo "" |
| echo "Steps:" |
| echo " 1. Create space at: https://huggingface.co/new-space" |
| echo " 2. Select Docker as SDK" |
| echo " 3. Push files to HF repo" |
| echo " 4. Add secrets in Space settings:" |
| echo " - TELEGRAM_BOT_TOKEN" |
| echo " - OLLAMA_HOST" |
| echo " - OLLAMA_API_KEY" |
| echo " - VISION_MODEL" |
| echo " - CHAT_MODEL" |
| echo "" |
| echo "More info: Read DEPLOYMENT.md" |
| ;; |
| |
| *) |
| echo "β Invalid option!" |
| exit 1 |
| ;; |
| esac |
|
|
| echo "" |
|
|