The โNext Media Downloaderโ project is a Next.js application that allows downloading mp3/mp4 files from various providers. It includes Docker support for easy deployment and configuration with Cloudflare Tunnel.
I made this project because I needed an easy way to download media files while providing a simple way to deploy and access the application.
๐ Get Started
To get started with your own version of the Next Media Downloader, clone the repository and follow the setup instructions below.
๐ Features
- ๐ฅ Download mp3/mp4 files from various providers
- ๐ Developed with Next.js
- ๐ณ Docker support
- ๐ Configurable with Cloudflare Tunnel
๐ Installation and Setup
Ensure you have Docker installed. Clone the repository and follow the instructions to set up Docker and Cloudflare Tunnel.
Running with Docker
docker run -d -p 3000:3000 --name next-media-dl -e NODE_ENV=production simonvanmello/next-media-dl:latest
Development Setup
npm install
npm run dev
๐ Cloudflare Tunnel Configuration
- Go to the Cloudflare Dashboard
- Click on the
Zero Trusttab - Expend the
Networkstab by clicking on the down arrow - Go to the
Tunnelstab - Click on
Create a tunnel - Select
Cloudflaredthen click on theNextbutton - Name your tunnel then click on the
Save tunnelbutton - Get your tunnelโs token and paste it in the
.envfile - Click on the
Nextbutton - Add a public hostname for you app
- In the service section, enter the following values:
- Type: HTTP
- Url: nextjs:3000
- Click on the
Save tunnelbutton
๐ป Commands
All commands are run from the root of the project, from a terminal:
| Command | Action |
|---|---|
| docker compose up | Starts the application using Docker Compose |
| npm run dev | Runs the development server |
| docker run | Runs the application using Docker |