{"id":34667754,"url":"https://github.com/red5pro/proxmox","last_synced_at":"2026-05-27T10:31:24.668Z","repository":{"id":319348138,"uuid":"1078442371","full_name":"red5pro/proxmox","owner":"red5pro","description":"Proxmox LXC Installation","archived":false,"fork":false,"pushed_at":"2025-10-17T23:46:52.000Z","size":52,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-12-26T08:08:13.796Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/red5pro.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2025-10-17T18:34:10.000Z","updated_at":"2025-10-17T23:46:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"2167a62f-645b-4765-b2c9-744c883fc884","html_url":"https://github.com/red5pro/proxmox","commit_stats":null,"previous_names":["red5pro/proxmox"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/red5pro/proxmox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/red5pro%2Fproxmox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/red5pro%2Fproxmox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/red5pro%2Fproxmox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/red5pro%2Fproxmox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/red5pro","download_url":"https://codeload.github.com/red5pro/proxmox/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/red5pro%2Fproxmox/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33562772,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-27T02:00:06.184Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2025-12-24T19:24:34.759Z","updated_at":"2026-05-27T10:31:24.658Z","avatar_url":"https://github.com/red5pro.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Red5 Pro Server - Proxmox LXC Helper Scripts\n\nAutomated installation scripts for deploying Red5 Pro Server on Proxmox Virtual Environment using LXC containers.\n\n## Overview\n\nThis repository provides Proxmox helper scripts that automate the deployment of Red5 Pro Server in LXC containers. Red5 Pro is a real-time streaming server supporting WebRTC, RTMP, RTSP, HLS, and SRT protocols for ultra-low latency streaming applications.\n\n## Features\n\n- **Automated LXC Container Creation**: Pre-configured with optimal resources for Red5 Pro\n- **Java 21 Installation**: Automatically installs required Java runtime\n- **License Configuration**: Interactive prompt for Red5 Pro license key\n- **Flexible Download Options**: Support for custom download URLs\n- **Optional SSL/TLS**: Let's Encrypt certificate integration with automatic renewal\n- **Systemd Service**: Red5 Pro configured as a system service with auto-start\n- **Firewall Configuration**: Automatic UFW rules for all required ports\n- **Update Support**: Built-in update mechanism for future releases\n\n## Prerequisites\n\n### Proxmox Environment\n- Proxmox VE 8.x or higher\n- Root access to Proxmox host\n- Internet connectivity for package downloads\n\n### Red5 Pro Requirements\n- Valid Red5 Pro license key from https://account.red5.net/\n- Red5 Pro server zip file hosted at an accessible URL\n\n### Optional SSL Requirements\n- Domain name pointing to your server's IP address\n- Ports 80 and 443 accessible from the internet (for Let's Encrypt validation)\n- Valid email address for certificate notifications\n\n## Installation\n\n### Quick Start\n\nRun the following command on your Proxmox host with the required parameters:\n\n```bash\nbash \u003c(wget -qLO - https://raw.githubusercontent.com/red5pro/proxmox/main/ct/red5install.sh) \\\n  --license \"your-license-key\" \\\n  --download-url \"https://your-server.com/path/to/red5pro-server.zip\"\n```\n\n### Command-Line Parameters\n\n**Required:**\n- `--license KEY` - Your Red5 Pro license key (obtain from https://account.red5.net/)\n- `--download-url URL` - Direct URL to download the Red5 Pro server zip file\n\n**Optional:**\n- `--ssl-domain DOMAIN` - Your domain name (e.g., red5.example.com)\n- `--ssl-email EMAIL` - Email address for Let's Encrypt notifications\n- `--verbose` - Enable verbose output for debugging\n- `--help` - Show help message\n\n### Installation Examples\n\n**Basic Installation (no SSL):**\n```bash\nbash \u003c(wget -qLO - https://raw.githubusercontent.com/red5pro/proxmox/main/ct/red5install.sh) \\\n  --license \"your-license-key-here\" \\\n  --download-url \"https://your-server.com/path/to/red5pro-server.zip\"\n```\n\n**Installation with SSL:**\n```bash\nbash \u003c(wget -qLO - https://raw.githubusercontent.com/red5pro/proxmox/main/ct/red5install.sh) \\\n  --license \"ABC123-DEF456-GHI789\" \\\n  --download-url \"https://files.example.com/red5pro-server-11.0.0.zip\" \\\n  --ssl-domain \"red5.example.com\" \\\n  --ssl-email \"admin@example.com\"\n```\n\n**Installation with Verbose Output (for debugging):**\n```bash\nbash \u003c(wget -qLO - https://raw.githubusercontent.com/red5pro/proxmox/main/ct/red5install.sh) \\\n  --license \"your-license-key\" \\\n  --download-url \"https://your-server.com/path/to/red5pro-server.zip\" \\\n  --verbose\n```\n\n### Container Configuration\n\nDuring installation, you can choose:\n\n1. **Default Settings** - Automated installation with optimal defaults\n2. **Advanced Settings** - Customize CPU, RAM, disk, network, etc.\n3. **Config File** - Use a previously saved configuration\n\n## Default Container Specifications\n\n- **CPU**: 4 cores\n- **RAM**: 4096 MB (4 GB)\n- **Disk**: 4 GB\n- **OS**: Ubuntu 24.04\n- **Type**: Privileged container\n- **Category**: Media\n\n## Network Ports\n\nThe following ports are configured and opened (if UFW is active):\n\n| Port Range      | Protocol | Purpose           |\n|-----------------|----------|-------------------|\n| 5080            | TCP      | HTTP              |\n| 443             | TCP      | HTTPS (if SSL)    |\n| 1935            | TCP      | RTMP              |\n| 8554            | TCP      | RTSP              |\n| 8443            | TCP      | RTMPS (if SSL)    |\n| 40000-65535     | UDP      | WebRTC            |\n\n## Post-Installation\n\n### Accessing Red5 Pro\n\nAfter successful installation:\n\n**Without SSL:**\n- HTTP: `http://\u003ccontainer-ip\u003e:5080`\n\n**With SSL:**\n- HTTP: `http://\u003cdomain\u003e:5080`\n- HTTPS: `https://\u003cdomain\u003e`\n- RTMPS: `rtmps://\u003cdomain\u003e:8443`\n\n### Service Management\n\nRed5 Pro runs as a systemd service:\n\n```bash\n# Check service status\nsystemctl status red5pro\n\n# Start service\nsystemctl start red5pro\n\n# Stop service\nsystemctl stop red5pro\n\n# Restart service\nsystemctl restart red5pro\n\n# View logs\njournalctl -u red5pro -f\n```\n\n### Red5 Pro Logs\n\nApplication logs are located at:\n- `/usr/local/red5pro/log/red5.log`\n\n## SSL Certificate Management\n\n### Automatic Renewal\n\nIf SSL is configured during installation:\n- Certificates automatically renew every 90 days via certbot\n- Post-renewal hook regenerates Java keystores and truststores\n- Red5 Pro service automatically restarts after renewal\n\n### Manual Certificate Renewal\n\nTo manually renew certificates:\n\n```bash\ncertbot renew\n/etc/letsencrypt/renewal-hooks/post/red5pro-renew.sh\n```\n\n### SSL Files Location\n\nCertificate files are stored at:\n- `/etc/letsencrypt/live/\u003cdomain\u003e/`\n  - `fullchain.pem` - Full certificate chain\n  - `privkey.pem` - Private key\n  - `keystore.jks` - Java keystore\n  - `truststore.jks` - Java truststore\n\n## Configuration\n\n### Red5 Pro Configuration Files\n\n- **Main Config**: `/usr/local/red5pro/conf/red5-core.properties`\n- **Service File**: `/lib/systemd/system/red5pro.service`\n- **License File**: `/usr/local/red5pro/LICENSE.KEY`\n\n### Modifying SSL Settings\n\nSSL configuration is appended to `red5-core.properties`:\n\n```properties\n# HTTPS Configuration\nhttps.port=443\nhttps.keystorepass=changeit\nhttps.keystorefile=/etc/letsencrypt/live/\u003cdomain\u003e/keystore.jks\nhttps.truststorepass=changeit\nhttps.truststorefile=/etc/letsencrypt/live/\u003cdomain\u003e/truststore.jks\n\n# RTMPS Configuration\nrtmps.port=8443\nrtmps.keystorepass=changeit\nrtmps.keystorefile=/etc/letsencrypt/live/\u003cdomain\u003e/keystore.jks\nrtmps.truststorepass=changeit\nrtmps.truststorefile=/etc/letsencrypt/live/\u003cdomain\u003e/truststore.jks\n```\n\n## Updating Red5 Pro\n\nThe container script includes an update function. To update Red5 Pro:\n\n```bash\n# From inside the container\n/usr/local/bin/update\n```\n\nNote: The update mechanism requires GitHub releases to be published at `red5pro/proxmox` with assets matching the pattern `red5pro-server-*-release.zip`.\n\n## Troubleshooting\n\n### Installation Issues\n\n**Certificate Generation Fails:**\n- Verify domain DNS points to server IP\n- Ensure ports 80 and 443 are accessible\n- Check firewall rules on both Proxmox host and router\n- Review certbot logs: `journalctl -u certbot`\n\n**Service Won't Start:**\n- Check Java installation: `java -version`\n- Verify license key: `cat /usr/local/red5pro/LICENSE.KEY`\n- Review service status: `systemctl status red5pro`\n- Check logs: `tail -f /usr/local/red5pro/log/red5.log`\n\n**Download Fails:**\n- Verify custom URL is accessible\n- Check network connectivity from container\n- Ensure sufficient disk space\n\n### Common Issues\n\n**Port Already in Use:**\n```bash\n# Check what's using the port\nss -tulpn | grep :5080\n```\n\n**Permission Issues:**\n```bash\n# Verify Red5 Pro directory ownership\nls -la /usr/local/red5pro\n```\n\n**Java Heap Size:**\nEdit `/lib/systemd/system/red5pro.service` and modify memory settings if needed.\n\n## File Structure\n\n```\nproxmox/\n├── ct/\n│   └── red5install.sh          # Container creation script\n├── install/\n│   └── red5-install.sh         # Installation script (runs inside container)\n├── frontend/\n│   └── public/\n│       └── json/\n│           └── red5pro.json    # Metadata for helper scripts website\n└── README.md                    # This file\n```\n\n## Repository Structure\n\nThis repository follows the Proxmox VE Helper-Scripts standard structure:\n\n- **ct/**: Container creation scripts\n- **install/**: Application installation scripts\n- **frontend/public/json/**: Metadata files for web interface\n\n## Development\n\n### Testing Changes\n\nWhen developing or testing modifications:\n\n1. Fork this repository\n2. Update script URLs to point to your fork\n3. Test in a non-production Proxmox environment\n4. Submit pull requests with changes\n\n### Contributing\n\nContributions are welcome! Please ensure:\n- Scripts follow existing coding standards\n- Changes are tested on Proxmox VE 8.x+\n- Documentation is updated accordingly\n\n## Resources\n\n### Red5 Pro Documentation\n- Official Docs: https://www.red5.net/docs/\n- SSL Configuration: https://www.red5.net/docs/installation/ssl/lets-encrypt/\n- Account Portal: https://account.red5.net/\n\n### Proxmox Resources\n- Proxmox VE: https://www.proxmox.com/\n- Community Scripts: https://community-scripts.github.io/ProxmoxVE/\n\n### Let's Encrypt\n- Certbot: https://certbot.eff.org/\n- Documentation: https://letsencrypt.org/docs/\n\n## License\n\nMIT License - Copyright (c) 2025 mondain\n\nSee LICENSE file for details.\n\n## Author\n\nPaul Gregoire (mondain)\n\n## Support\n\nFor issues related to:\n- **These scripts**: Open an issue at https://github.com/red5pro/proxmox/issues\n- **Red5 Pro Server**: Contact Red5 Pro support or visit https://www.red5.net/\n- **Proxmox VE**: Visit https://forum.proxmox.com/\n\n## Security Notes\n\n- Default keystore/truststore password is `changeit` (Red5 Pro standard)\n- License keys are stored in plain text at `/usr/local/red5pro/LICENSE.KEY`\n- Ensure proper firewall rules to restrict access to management ports\n- Keep Red5 Pro updated with latest security patches\n- Use SSL/TLS for production deployments\n\n## Disclaimer\n\nThis is an unofficial helper script for Red5 Pro Server. Red5 Pro is a commercial product requiring a valid license. Always review scripts before execution and test in non-production environments first.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fred5pro%2Fproxmox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fred5pro%2Fproxmox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fred5pro%2Fproxmox/lists"}