Spaces:
Runtime error
Runtime error
| # π Deploy SafetyMaster Pro to Render (Free) | |
| ## Why Render? | |
| - **Free tier**: 512 MB RAM, automatic HTTPS, zero-downtime deploys | |
| - **Easy setup**: Similar to Railway, just connect your GitHub repo | |
| - **No credit card required** for free tier | |
| - **Perfect for Flask apps** with AI models | |
| ## π Prerequisites | |
| - GitHub account with your SafetyMaster Pro code | |
| - Clean repository (large files already removed via .gitignore) | |
| ## π§ Step 1: Prepare Your App | |
| Your app is already configured for cloud deployment! The existing files work perfectly: | |
| - β `Dockerfile` - Ready for containerized deployment | |
| - β `requirements.txt` - Python dependencies | |
| - β `web_interface.py` - Uses PORT environment variable | |
| - β `.dockerignore` - Excludes unnecessary files | |
| ## π Step 2: Deploy to Render | |
| ### Option A: Web Interface (Recommended) | |
| 1. **Sign up**: Go to [render.com](https://render.com) and create free account | |
| 2. **Connect GitHub**: Link your GitHub account | |
| 3. **Create Web Service**: | |
| - Click "New +" β "Web Service" | |
| - Select your SafetyMaster repository | |
| - Choose "Docker" as environment | |
| - Set service name: `safetymaster-pro` | |
| ### Option B: Using render.yaml (Advanced) | |
| Create `render.yaml` in your project root: | |
| ```yaml | |
| services: | |
| - type: web | |
| name: safetymaster-pro | |
| env: docker | |
| plan: free | |
| dockerfilePath: ./Dockerfile | |
| envVars: | |
| - key: PORT | |
| value: 10000 | |
| - key: PYTHONUNBUFFERED | |
| value: 1 | |
| ``` | |
| ## βοΈ Step 3: Configuration | |
| ### Environment Variables (if needed) | |
| - `PORT`: Automatically set by Render | |
| - `SECRET_KEY`: Add your own secret key for Flask sessions | |
| ### Build Settings | |
| - **Build Command**: Automatically detected from Dockerfile | |
| - **Start Command**: Automatically detected from Dockerfile | |
| ## π― Step 4: Deploy | |
| 1. **Push to GitHub**: Make sure your latest code is pushed | |
| 2. **Auto-deploy**: Render will automatically build and deploy | |
| 3. **Monitor**: Watch the build logs in Render dashboard | |
| 4. **Access**: Your app will be available at `https://safetymaster-pro.onrender.com` | |
| ## π Expected Performance | |
| ### Free Tier Limits | |
| - **RAM**: 512 MB (sufficient for your Flask app) | |
| - **CPU**: 0.1 CPU units (shared) | |
| - **Storage**: Ephemeral (files reset on restart) | |
| - **Bandwidth**: 100 GB/month | |
| - **Build time**: 15 minutes max | |
| ### AI Model Considerations | |
| - Models download automatically on first run | |
| - May take 2-3 minutes for first startup (cold start) | |
| - Subsequent requests are fast | |
| - App sleeps after 15 minutes of inactivity (free tier) | |
| ## π§ Troubleshooting | |
| ### Common Issues | |
| 1. **Build timeout**: Models are too large | |
| - Solution: Models download at runtime (already configured) | |
| 2. **Memory issues**: App uses too much RAM | |
| - Solution: Optimize model loading in `safety_detector.py` | |
| 3. **Slow startup**: First request takes time | |
| - Solution: Normal behavior, subsequent requests are fast | |
| ### Optimization Tips | |
| ```python | |
| # In safety_detector.py - already implemented | |
| # Models download only when needed | |
| # Efficient memory usage | |
| # Automatic cleanup | |
| ``` | |
| ## π Alternative Free Hosts | |
| If Render doesn't work, try these: | |
| ### 1. Fly.io | |
| - **Free tier**: 3 VMs, 3GB storage | |
| - **Setup**: `flyctl launch` (requires credit card) | |
| - **Pros**: Better performance, global edge | |
| ### 2. Koyeb | |
| - **Free tier**: 1 web service | |
| - **Setup**: Connect GitHub repo | |
| - **Pros**: No credit card required | |
| ### 3. PythonAnywhere | |
| - **Free tier**: 512MB storage | |
| - **Setup**: Upload files manually | |
| - **Pros**: Python-focused, very simple | |
| ## π Success! | |
| Once deployed, your SafetyMaster Pro will be live at: | |
| `https://your-app-name.onrender.com` | |
| Features available: | |
| - β Real-time safety monitoring | |
| - β PPE detection (Hard Hat, Safety Vest, Mask) | |
| - β Violation alerts | |
| - β Web dashboard | |
| - β Image capture | |
| ## π Need Help? | |
| - **Render Docs**: [render.com/docs](https://render.com/docs) | |
| - **Community**: [community.render.com](https://community.render.com) | |
| - **Support**: Free tier includes community support | |
| --- | |
| **Ready to deploy?** Just push your code to GitHub and connect it to Render! π |