All checks were successful
CI / build (push) Successful in 56s
- Add PIP_BREAK_SYSTEM_PACKAGES=1 to install hanime-plugin via pip - Install Deno JS runtime required by the plugin's extractors - Document plugin setup and JS runtime requirement in README - Note plugin support in feature list
36 lines
882 B
Docker
36 lines
882 B
Docker
FROM golang:1.26.4-alpine3.23 AS builder
|
|
|
|
WORKDIR /src
|
|
|
|
ARG HTTP_PROXY
|
|
ARG HTTPS_PROXY
|
|
ENV HTTP_PROXY=${HTTP_PROXY}
|
|
ENV HTTPS_PROXY=${HTTPS_PROXY}
|
|
|
|
COPY go.mod go.sum ./
|
|
RUN go mod download
|
|
COPY . .
|
|
RUN go build -o /usr/local/bin/uptodown-bot ./cmd/bot/
|
|
|
|
FROM alpine:3.23
|
|
|
|
RUN apk add --no-cache ffmpeg yt-dlp ca-certificates tzdata py3-pip curl
|
|
|
|
# Install yt-dlp plugins (add more as needed).
|
|
# PIP_BREAK_SYSTEM_PACKAGES bypasses PEP 668 — safe in Docker.
|
|
RUN PIP_BREAK_SYSTEM_PACKAGES=1 pip3 install --root-user-action=ignore --no-cache-dir hanime-plugin
|
|
|
|
# Install Deno JS runtime (required by some yt-dlp plugins)
|
|
RUN curl -fsSL https://deno.land/install.sh | sh
|
|
ENV PATH="/root/.deno/bin:${PATH}"
|
|
|
|
# Verify Deno is available
|
|
RUN deno --version
|
|
|
|
WORKDIR /data
|
|
|
|
COPY --from=builder /usr/local/bin/uptodown-bot /usr/local/bin/uptodown-bot
|
|
VOLUME ["/data"]
|
|
|
|
CMD ["uptodown-bot"]
|