{"id":41987574,"url":"https://github.com/saihgupr/frigate-proxmox-script","last_synced_at":"2026-02-06T22:03:04.474Z","repository":{"id":334068601,"uuid":"1139295732","full_name":"saihgupr/frigate-proxmox-script","owner":"saihgupr","description":"An automated, Docker-based installation script for deploying Frigate NVR on Proxmox VE using an LXC container.","archived":false,"fork":false,"pushed_at":"2026-01-22T23:14:13.000Z","size":29,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-23T08:44:14.243Z","etag":null,"topics":["frigate","frigate-nvr","proxmox","proxmox-scripts"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/saihgupr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"ko_fi":"saihgupr"}},"created_at":"2026-01-21T19:22:17.000Z","updated_at":"2026-01-23T06:44:05.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/saihgupr/frigate-proxmox-script","commit_stats":null,"previous_names":["saihgupr/frigate-proxmox-script"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/saihgupr/frigate-proxmox-script","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saihgupr%2Ffrigate-proxmox-script","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saihgupr%2Ffrigate-proxmox-script/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saihgupr%2Ffrigate-proxmox-script/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saihgupr%2Ffrigate-proxmox-script/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/saihgupr","download_url":"https://codeload.github.com/saihgupr/frigate-proxmox-script/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saihgupr%2Ffrigate-proxmox-script/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29178566,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T20:14:21.878Z","status":"ssl_error","status_checked_at":"2026-02-06T20:14:21.443Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["frigate","frigate-nvr","proxmox","proxmox-scripts"],"created_at":"2026-01-26T00:20:33.191Z","updated_at":"2026-02-06T22:03:04.468Z","avatar_url":"https://github.com/saihgupr.png","language":"Shell","funding_links":["https://ko-fi.com/saihgupr"],"categories":[],"sub_categories":[],"readme":"# Frigate Proxmox Script\n\nAn automated, Docker-based installation script for deploying [Frigate NVR](https://frigate.video/) on Proxmox VE using an LXC container. This script provisions the full stack end-to-end—no manual setup required.\n\n### What it does:\n1. Creates a privileged **LXC container**\n2. Installs **Docker** and **Docker Compose**\n3. Deploys **Frigate NVR** with Intel iGPU hardware acceleration\n\nOptimized for the **Beelink S12** (Intel N95/N100), but compatible with most Intel-based Proxmox host.\n\n![](images/1.png)\n![](images/2.png)\n\n## Features\n\n✅ **Docker-Based** - Official Frigate images for reliability and speed  \n✅ **Zero-Config Setup** - Smart hardware detection avoids manual indexing  \n✅ **Intel, NVIDIA, \u0026 AMD** - Broad hardware acceleration support via VAAPI/NVDEC  \n✅ **Hardware Auto-Detection** - Automatically identifies CPU, GPU, and Coral TPU  \n✅ **Easy Updates** - Simple Docker pulls to keep your NVR current  \n✅ **Home Assistant Ready** - Default ports and paths pre-configured  \n✅ **Add-ons Included** - Optional SSH \u0026 Samba for easy file management  \n\n## Requirements\n\n- **Proxmox VE** 7.0 or later\n- **Root access** on Proxmox host\n- **Intel iGPU, NVIDIA GPU, or AMD GPU** (recommended for low CPU usage)\n- **Google Coral TPU** (optional)\n\n## Quick Start\n\n### Option 1: One-Command Install (Recommended)\n\n```bash\nbash \u003c(curl -s https://raw.githubusercontent.com/saihgupr/frigate-proxmox-script/main/install.sh)\n```\n\n### Option 2: Download and Run\n\n```bash\nwget https://raw.githubusercontent.com/saihgupr/frigate-proxmox-script/main/install.sh\nbash install.sh\n```\n\n**Installation takes ~2 minutes**\n\n## Usage\n\n```bash\n./install.sh [OPTIONS]\n\nOPTIONS:\n    --dry-run       Run in simulation mode (no actual changes)\n    --verbose       Enable verbose output\n    --help          Show help message\n```\n\n## Configuration Options\n\nThe script will prompt you for:\n\n- **Container ID** - Choose between 100-999 (or auto-select)\n- **Root Password** - Set a password for the `root` user (required for console login)\n- **SSH** - Enable SSH access (uses Root Password automatically with `root` user)\n- **CPU Cores** - Default: 4\n- **RAM** - Default: 2048 MB (2GB recommended for Docker)\n- **Disk Size** - Default: 10 GB (for recordings)\n- **Network** - DHCP or static IP\n- **Intel iGPU** - Enable hardware acceleration (recommended)\n- **Web Port** - Default: 5000 (Home Assistant compatible)\n- **Docker Image** - stable, beta, or custom version tag\n\n## Post-Installation\n\n### Adding Your Cameras\n\n#### Method 1: Edit Config File via SSH\n\n```bash\n# Access Proxmox host, then edit the config\npct exec \u003cCT_ID\u003e -- nano /opt/frigate/config/config.yml\n```\n\n#### Method 2: Copy Config from Your Local Machine\n\n```bash\n# From your Mac/PC, copy your config.yml to Proxmox\nscp config.yml root@\u003cPROXMOX_IP\u003e:/tmp/\n\n# On Proxmox host, copy to container\npct push \u003cCT_ID\u003e /tmp/config.yml /opt/frigate/config/config.yml\n\n# Restart Frigate to apply changes\npct exec \u003cCT_ID\u003e -- docker compose -f /opt/frigate/docker-compose.yml restart\n```\n\n#### Method 3: Use Frigate Web UI (Recommended)\n\nStarting in Frigate 0.14+, you can edit the configuration directly in the web interface:\n\n1. Go to `http://\u003cCONTAINER_IP\u003e:5000/config`\n2. Click the **Edit** button\n3. Make your changes\n4. Click **Save** (Frigate will automatically restart)\n\n### Samba Network File Sharing\n\nIf you enabled Samba during installation, you can access and edit Frigate files directly from your computer using network file shares.\n\n**Available Shares:**\n\n1. **`\\\\\u003cCONTAINER_IP\u003e\\Frigate`** - Full Frigate installation directory (`/opt/frigate`)\n2. **`\\\\\u003cCONTAINER_IP\u003e\\Config`** - Configuration files only (`/opt/frigate/config`)\n3. **`\\\\\u003cCONTAINER_IP\u003e\\Media`** - Recordings and snapshots (`/opt/frigate/storage`)\n\n**How to Connect:**\n\n**Windows:**\n1. Open File Explorer\n2. Type in the address bar: `\\\\\u003cCONTAINER_IP\u003e\\Config`\n3. Press Enter\n4. Navigate to `config.yml` and edit with your favorite text editor\n\n**macOS:**\n1. Open Finder\n2. Press `Cmd + K` (or Go → Connect to Server)\n3. Enter: `smb://\u003cCONTAINER_IP\u003e/Config`\n4. Click Connect\n5. Edit `config.yml` in any text editor\n\n**Linux:**\n```bash\n# Mount the share\nsudo mount -t cifs //\u003cCONTAINER_IP\u003e/Config /mnt/frigate -o guest\n\n# Edit config\nnano /mnt/frigate/config.yml\n```\n\n**Share Details:**\n- **Authentication**: Guest access enabled (no password required by default)\n- **Password**: If you configured Samba during installation, you can also authenticate with:\n  - Username: `root`\n  - Password: The root password you set during installation\n- **Permissions**: Full read/write access\n- **User**: All files created as `root` user automatically\n\n### File Locations\n\n```\n/opt/frigate/\n├── docker-compose.yml      # Docker Compose configuration\n├── config/\n│   └── config.yml         # Frigate configuration\n└── storage/               # Recordings and snapshots\n```\n\n## Hardware Acceleration\n\n## How Smart Detection Works\n\nThe script performs a \"pre-flight\" scan of your Proxmox host to determine the best possible configuration for your specific hardware:\n\n1.  **CPU Identification**: Detects your processor model to optimize OpenVINO performance.\n2.  **GPU Passthrough**: \n    - **Intel/AMD**: Automatically detects `/dev/dri/` and configures VAAPI.\n    - **NVIDIA**: Detects the presence of NVIDIA drivers and configures the NVIDIA Container Runtime in LXC.\n3.  **Detector Optimization**:\n    - If a **Google Coral (USB or PCIe)** is found, it's set as the primary detector.\n    - If no Coral is found, it utilizes **OpenVINO** (favoring the iGPU if available, otherwise falling back to CPU).\n\n### Verify Hardware Acceleration\n\n```bash\n# Check if device is accessible in container\npct exec \u003cCT_ID\u003e -- ls -l /dev/dri/renderD128\n\n# View Frigate logs for hardware acceleration status\npct exec \u003cCT_ID\u003e -- docker logs frigate 2\u003e\u00261 | grep -i vaapi\n\n# View GPU usage\nsudo intel_gpu_top\n```\n\n### Example Config with Hardware Acceleration\n\n```yaml\nffmpeg:\n  hwaccel_args: preset-intel-qsv-h264\n\ndetectors:\n  ov:\n    type: openvino\n    device: GPU\n    model_path: /openvino-model/ssdlite_mobilenet_v2.xml\n\nmodel:\n  width: 300\n  height: 300\n  input_tensor: nhwc\n  input_pixel_format: bgr\n  labelmap_path: /openvino-model/coco_91cl_bkgr.txt\n\ndetect:\n  enabled: true\n```\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003ch2\u003eTroubleshooting\u003c/h2\u003e\u003c/summary\u003e\n\n### Container won't start\n```bash\n# Check LXC status\npct status \u003cCT_ID\u003e\n\n# View container logs\npct exec \u003cCT_ID\u003e -- journalctl -xe\n```\n\n### Frigate not accessible\n```bash\n# Check if Docker container is running\npct exec \u003cCT_ID\u003e -- docker ps\n\n# Check Frigate logs\npct exec \u003cCT_ID\u003e -- docker logs frigate\n\n# Verify port in docker-compose.yml\npct exec \u003cCT_ID\u003e -- cat /opt/frigate/docker-compose.yml | grep -A2 ports\n```\n\n### Hardware acceleration not working\n```bash\n# Check if iGPU device exists\npct exec \u003cCT_ID\u003e -- ls -l /dev/dri/\n\n# Test VAAPI\npct exec \u003cCT_ID\u003e -- docker exec frigate vainfo\n```\n\n### Configuration errors\n```bash\n# Validate YAML syntax\npct exec \u003cCT_ID\u003e -- docker exec frigate python3 -c \"import yaml; yaml.safe_load(open('/config/config.yml'))\"\n\n# Check Frigate logs for config errors\npct exec \u003cCT_ID\u003e -- docker logs frigate 2\u003e\u00261 | grep -i error\n```\n\n\u003c/details\u003e\n\n## Updating Frigate\n\n```bash\n# Pull the latest image\npct exec \u003cCT_ID\u003e -- docker compose -f /opt/frigate/docker-compose.yml pull\n\n# Restart with new image\npct exec \u003cCT_ID\u003e -- docker compose -f /opt/frigate/docker-compose.yml up -d\n\n# Verify new version\npct exec \u003cCT_ID\u003e -- docker exec frigate cat /VERSION\n```\n\n## Uninstallation\n\n```bash\n# Stop and destroy the container\npct stop \u003cCT_ID\u003e\npct destroy \u003cCT_ID\u003e\n```\n\n## Based On\n\n- **Tutorial**: [Installing Frigate NVR on Proxmox](https://www.mostlychris.com/installing-frigate-nvr-on-proxmox-in-an-lxc-container/)\n- **Official Docs**: [Frigate Installation](https://docs.frigate.video/frigate/installation)\n- **Docker**: [Official Frigate Docker Image](https://github.com/blakeblackshear/frigate)\n\n## Contributing\n\nIssues and pull requests are welcome! Star the repo if you find it useful. ⭐\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaihgupr%2Ffrigate-proxmox-script","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaihgupr%2Ffrigate-proxmox-script","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaihgupr%2Ffrigate-proxmox-script/lists"}