mirror of
https://github.com/marcopiovanello/yt-dlp-web-ui.git
synced 2026-07-25 06:54:30 +00:00
Server v4 (#370)
* refactoring-1 introduced pipelines and abstracted download process.go in Downloader interface * migrated to boltdb from sqlite + session files * refactoring: config struct & pipelines * added js runtime for yt-dlp * updated dockerfile * added external js runtime, metadata scraping refactor * updated Dockerfile * fixed env propagation in docker * updated package name to v4 * updated readme and cd
This commit is contained in:
+14
-13
@@ -1,8 +1,7 @@
|
||||
# Node (pnpm) ------------------------------------------------------------------
|
||||
FROM node:22-slim AS ui
|
||||
FROM node:24-slim AS ui
|
||||
ENV PNPM_HOME="/pnpm"
|
||||
ENV PATH="$PNPM_HOME:$PATH"
|
||||
RUN corepack prepare pnpm@10.0.0 --activate && corepack enable
|
||||
RUN corepack prepare pnpm@11.4.0 --activate && corepack enable
|
||||
COPY . /usr/src/yt-dlp-webui
|
||||
|
||||
WORKDIR /usr/src/yt-dlp-webui/frontend
|
||||
@@ -10,10 +9,10 @@ WORKDIR /usr/src/yt-dlp-webui/frontend
|
||||
RUN rm -rf node_modules
|
||||
|
||||
RUN pnpm install
|
||||
RUN pnpm run build
|
||||
# -----------------------------------------------------------------------------
|
||||
RUN pnpm build
|
||||
|
||||
|
||||
|
||||
# Go --------------------------------------------------------------------------
|
||||
FROM golang AS build
|
||||
|
||||
WORKDIR /usr/src/yt-dlp-webui
|
||||
@@ -22,14 +21,14 @@ COPY . .
|
||||
COPY --from=ui /usr/src/yt-dlp-webui/frontend /usr/src/yt-dlp-webui/frontend
|
||||
|
||||
RUN CGO_ENABLED=0 GOOS=linux go build -o yt-dlp-webui
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
# Runtime ---------------------------------------------------------------------
|
||||
FROM python:3.13.2-alpine3.21
|
||||
|
||||
|
||||
FROM python:alpine
|
||||
|
||||
RUN apk update && \
|
||||
apk add ffmpeg ca-certificates curl wget gnutls --no-cache && \
|
||||
pip install "yt-dlp[default,curl-cffi,mutagen,pycryptodomex,phantomjs,secretstorage]"
|
||||
apk add ffmpeg ca-certificates curl wget gnutls deno --no-cache && \
|
||||
pip install "yt-dlp[default,curl-cffi,mutagen,pycryptodomex,phantomjs,secretstorage]"
|
||||
|
||||
VOLUME /downloads /config
|
||||
|
||||
@@ -37,7 +36,9 @@ WORKDIR /app
|
||||
|
||||
COPY --from=build /usr/src/yt-dlp-webui/yt-dlp-webui /app
|
||||
|
||||
ENV JWT_SECRET=secret
|
||||
ENV APP_PATHS_DOWNLOAD_PATH="/downloads"
|
||||
ENV APP_PATHS_LOCAL_DATABASE_PATH="/config"
|
||||
ENV APP_PATHS_JS_RUNTIME_PATH="deno:/usr/bin/deno"
|
||||
|
||||
EXPOSE 3033
|
||||
ENTRYPOINT [ "./yt-dlp-webui" , "--out", "/downloads", "--conf", "/config/config.yml", "--db", "/config/local.db" ]
|
||||
ENTRYPOINT [ "./yt-dlp-webui", "--conf", "/config/config.yml"]
|
||||
|
||||
Reference in New Issue
Block a user