Spaces:
Sleeping
Sleeping
| # syntax=docker/dockerfile:1 | |
| ARG RELEASE_VERSION=latest | |
| # ---------------- Downloader ---------------- | |
| FROM alpine:3.21 AS downloader | |
| ARG RELEASE_VERSION | |
| RUN apk add --no-cache curl ca-certificates | |
| WORKDIR /tmp | |
| RUN set -e; \ | |
| if [ "$RELEASE_VERSION" = "latest" ]; then \ | |
| URL="https://github.com/mhdzumair/MediaFlow-Proxy-Light/releases/latest/download/mediaflow-proxy-light-linux-x86_64"; \ | |
| else \ | |
| URL="https://github.com/mhdzumair/MediaFlow-Proxy-Light/releases/download/${RELEASE_VERSION}/mediaflow-proxy-light-linux-x86_64"; \ | |
| fi; \ | |
| curl -fL --retry 3 --retry-delay 2 -o mediaflow-proxy-light "$URL"; \ | |
| chmod +x mediaflow-proxy-light | |
| # ---------------- Runtime ---------------- | |
| FROM debian:bookworm-slim | |
| RUN apt-get update && \ | |
| apt-get install -y --no-install-recommends \ | |
| redis-server \ | |
| ca-certificates \ | |
| tini && \ | |
| rm -rf /var/lib/apt/lists/* | |
| WORKDIR /app | |
| COPY --from=downloader /tmp/mediaflow-proxy-light /app/mediaflow-proxy-light | |
| RUN chmod +x /app/mediaflow-proxy-light | |
| # HF Spaces port | |
| ENV APP__SERVER__HOST=0.0.0.0 | |
| ENV APP__SERVER__PORT=7860 | |
| # Redis | |
| ENV APP__REDIS__URL=redis://127.0.0.1:6379 | |
| ENV RUST_LOG=info | |
| COPY start.sh /app/start.sh | |
| RUN chmod +x /app/start.sh | |
| EXPOSE 7860 | |
| ENTRYPOINT ["/usr/bin/tini","--"] | |
| CMD ["/app/start.sh"] |