jaydeepsolanki commited on
Commit
70a3f1b
·
verified ·
1 Parent(s): d8f7196

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +61 -0
Dockerfile ADDED
@@ -0,0 +1,61 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # syntax=docker/dockerfile:1
2
+
3
+ ARG RELEASE_VERSION=latest
4
+
5
+ # ---------------- Downloader ----------------
6
+ FROM alpine:3.21 AS downloader
7
+
8
+ ARG RELEASE_VERSION
9
+
10
+ RUN apk add --no-cache curl ca-certificates
11
+
12
+ WORKDIR /tmp
13
+
14
+ RUN set -e; \
15
+ if [ "$RELEASE_VERSION" = "latest" ]; then \
16
+ URL="https://github.com/mhdzumair/MediaFlow-Proxy-Light/releases/latest/download/mediaflow-proxy-light-linux-x86_64"; \
17
+ else \
18
+ URL="https://github.com/mhdzumair/MediaFlow-Proxy-Light/releases/download/${RELEASE_VERSION}/mediaflow-proxy-light-linux-x86_64"; \
19
+ fi; \
20
+ curl -fL --retry 3 --retry-delay 2 -o mediaflow-proxy-light "$URL"; \
21
+ chmod +x mediaflow-proxy-light
22
+
23
+
24
+ # ---------------- Runtime ----------------
25
+ FROM debian:bookworm-slim
26
+
27
+ RUN apt-get update && \
28
+ apt-get install -y --no-install-recommends \
29
+ redis-server \
30
+ ca-certificates \
31
+ tini && \
32
+ rm -rf /var/lib/apt/lists/*
33
+
34
+
35
+ WORKDIR /app
36
+
37
+ COPY --from=downloader /tmp/mediaflow-proxy-light /app/mediaflow-proxy-light
38
+
39
+ RUN chmod +x /app/mediaflow-proxy-light
40
+
41
+
42
+ # HF Spaces port
43
+ ENV APP__SERVER__HOST=0.0.0.0
44
+ ENV APP__SERVER__PORT=7860
45
+
46
+ # Redis
47
+ ENV APP__REDIS__URL=redis://127.0.0.1:6379
48
+
49
+ ENV RUST_LOG=info
50
+
51
+
52
+ COPY start.sh /app/start.sh
53
+ RUN chmod +x /app/start.sh
54
+
55
+
56
+ EXPOSE 7860
57
+
58
+
59
+ ENTRYPOINT ["/usr/bin/tini","--"]
60
+
61
+ CMD ["/app/start.sh"]