MichaelBelgium / Youtube-API

A way to host your own API that converts youtube video's to mp3/mp4 and returns a download/stream link and information.
155 stars 49 forks source link
ffmpeg mp3-api youtube-api-v3 youtube-dl youtube-dl-php youtube-downloader youtube-search

Youtube-API

With these files you are able to create your own Youtube API with ability to search also.

Laravel version of this package

Software requirements

General installation

First we install the dependencies on the server, then website.

VPS

Website

Configuration

Setting options are available in src/Config.php

Documentation

Check out the wiki for more docs.

Docker

You can deploy this API using docker-compose.yml and the Dockerfile to build from. Please add your google API Key to the .env file. It will expose port 80 from the container, out to port 80 on the host. This can also be changed in .env under HOST_PORT. The docker image uses yt-dlp.

How to run with docker-compose

Put docker-compose.yml and Dockerfile together in a new, empty folder. Create .env, and set the values listed in the example .env in this repo. To run, use the following command:

docker-compose up -d

To stop:

docker-compose down
# Or use this to remove the attached volume, to clear up space-
docker-compose down -v

Changing API Key?

If you are changing your API key, the change will not reflect until you have removed the attached docker volume and restarted the container. Another option is to enter the container and go to src/Config.php and manually change it, or mount the config in as a separate volume.