A web application for downloading media from various platforms including YouTube, Instagram, and TikTok.
- Download videos from YouTube, Instagram, and TikTok
- Rate limiting to prevent abuse
- Automatic file cleanup
- Progress tracking
- Secure file handling
- Docker support
- Docker and Docker Compose
- At least 2GB of RAM
- At least 10GB of disk space
- Clone the repository:
git clone <repository-url>
cd universal-media-downloader
- Create necessary directories:
mkdir -p downloads logs
- Build and start the application:
docker-compose up -d
The application will be available at http://localhost:8000
- Open your web browser and navigate to http://localhost:8000
- Paste the URL of the media you want to download
- Click the download button
- Wait for the download to complete
- Click the download link for the file
- 10 downloads per minute per IP
- 30 file downloads per minute per IP
- Maximum file size: 500MB
- Maximum concurrent downloads: 5
- All files are automatically cleaned up after 7 days
- Files are served with proper permissions
- Rate limiting prevents abuse
- Input validation and sanitization
- Non-root user in container
Logs are stored in the logs
directory and are rotated when they reach 10MB.
- If downloads fail, check the logs:
docker-compose logs web
- If the application is not accessible:
docker-compose ps
- To restart the application:
docker-compose restart
To run the application in development mode:
python app.py
MIT License