Fix missing nodejs in Docker + utility (#147)

* Added Makefile and nodejs to docker

* Update README.md, added makefile description

* Clarification on mounting config.json
This commit is contained in:
Emanuele C 2024-06-12 20:16:24 +02:00 committed by GitHub
parent 5ae2905af8
commit 4b475a4724
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 27 additions and 8 deletions

5
Makefile Normal file
View File

@ -0,0 +1,5 @@
build-container:
docker build -t streaming-community-api .
run-container:
docker run --rm -it -p 8000:8000 -v ${LOCAL_DIR}:/app/Video -v ./config.json:/app/config.json streaming-community-api

View File

@ -27,8 +27,8 @@ Make sure you have the following prerequisites installed on your system:
* [python](https://www.python.org/downloads/) > 3.8
* [ffmpeg](https://www.gyan.dev/ffmpeg/builds/)
* [opnessl](https://www.openssl.org) or [pycryptodome](https://pypi.org/project/pycryptodome/)
* [opnessl](https://www.openssl.org) or [pycryptodome](https://pypi.org/project/pycryptodome/)
* [nodejs](https://nodejs.org/)
## Installation
@ -209,6 +209,19 @@ By default the videos will be saved in `/app/Video` inside the container, if you
docker run -it -p 8000:8000 -v /path/to/download:/app/Video streaming-community-api
```
### Docker quick setup with Make
Inside the Makefile (install `make`) are already configured two commands to build and run the container:
```
make build-container
# set your download directory as ENV variable
make LOCAL_DIR=/path/to/download run-container
```
The `run-container` command mounts also the `config.json` file, so any change to the configuration file is reflected immediately without having to rebuild the image.
## Tutorial
For a detailed walkthrough, refer to the [video tutorial](https://www.youtube.com/watch?v=Ok7hQCgxqLg&ab_channel=Nothing)
@ -217,4 +230,4 @@ For a detailed walkthrough, refer to the [video tutorial](https://www.youtube.co
## To do
- GUI
- Website api
- Add other site
- Add other site

View File

@ -18,7 +18,7 @@
},
"M3U8_DOWNLOAD": {
"tdqm_workers": 2,
"tqdm_delay": 0.01,
"tqdm_delay": 0.6,
"tqdm_use_large_bar": true,
"download_video": true,
"download_audio": true,

View File

@ -1,8 +1,5 @@
FROM python:3.11-slim
COPY . /app
WORKDIR /app
ENV TEMP /tmp
RUN mkdir -p $TEMP
@ -13,7 +10,11 @@ RUN apt-get update && apt-get install -y \
libffi-dev \
python3-dev \
libxml2-dev \
libxslt1-dev
libxslt1-dev \
nodejs
COPY . /app
WORKDIR /app
RUN pip install --no-cache-dir -r requirements.txt