Create docker image

This commit is contained in:
SeanOMik 2023-03-18 01:05:42 -04:00
parent cfa182262b
commit 33fdc7646f
Signed by: SeanOMik
GPG Key ID: 568F326C7EB33ACB
4 changed files with 41 additions and 0 deletions

5
.dockerignore Normal file
View File

@ -0,0 +1,5 @@
cmake-build-debug
build_old
.idea
build
assets

1
.gitignore vendored
View File

@ -1,3 +1,4 @@
cmake-build-debug cmake-build-debug
build_old build_old
.idea .idea
build

21
Dockerfile Normal file
View File

@ -0,0 +1,21 @@
FROM alpine
RUN echo "https://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \
echo "https://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories
RUN apk update && \
apk add curl curl-dev sqlite-dev libgcrypt-dev alpine-sdk cmake make
# Copy application now
WORKDIR /app
COPY ./ /app
RUN cmake -S /app -B build -D DROPOUT_DL_BUILD_ALL=true
WORKDIR /app/build
RUN make && \
chmod +x dropout-dl-* && \
cp dropout-dl-* ../
WORKDIR /app
ENTRYPOINT [ "/app/dropout-dl-full" ]

View File

@ -6,9 +6,11 @@ dropout-dl is tool to download [dropout.tv](https://www.dropout.tv) episodes. It
* [Installation](#installation) * [Installation](#installation)
* [Docker](#docker)
* [How to Build](#how-to-build) * [How to Build](#how-to-build)
* [Dependencies](#Dependencies) * [Dependencies](#Dependencies)
* [Usage](#how-to-use) * [Usage](#how-to-use)
* [Options](#options) * [Options](#options)
* [Login](#login) * [Login](#login)
* [Cookies](#cookies) * [Cookies](#cookies)
@ -16,6 +18,18 @@ dropout-dl is tool to download [dropout.tv](https://www.dropout.tv) episodes. It
# Installation # Installation
## Docker
A docker image was created that makes it easier to build and use dropout-dl. You can simply build the docker image without worrying about installing any system dependencies:
```shell
docker build -t dropout-dl:latest .
```
After its done building, you can use it by adding your arguments to the end of the `docker run` command:
```shell
docker run --rm -it -v $PWD/login:/app/login -v $PWD/out:/Downloads dropout-dl:latest --output-directory /Downloads --captions -e https://www.dropout.tv/dimension-20/season:10/videos/the-chosen-ones
```
**Note:** The docker image expects the `login` file to be at `/app/login`.\
You must specify an output directory and mount that directory to the host so that you can retrieve the files from the docker container. In the above command I tell dropout-dl to output everything in `/Downloads` inside the container, which is mounted to a folder named `out` inside the current directory (`$PWD` is current directory).
## How to Build ## How to Build
``` ```
cmake -S <source-dir> -B <build-dir> cmake -S <source-dir> -B <build-dir>