6f5f06ce4c3257307707e82511dc57ef83920da3

Author
TheEdgeOfRage <git@theedgeofrage.com>
Committer
TheEdgeOfRage <git@theedgeofrage.com>
Date

Message

Use yt-dlp base image to circumvent yt protections

Diff

 1diff --git a/Dockerfile b/Dockerfile
 2index 88a673925bbeffe82b160a85711c6adbb627786a..df058e4beb07a8b08d337bcad44b32a4231e6c90 100644
 3--- a/Dockerfile
 4+++ b/Dockerfile
 5@@ -8,20 +8,16 @@ COPY go.mod go.sum /app/
 6 RUN --mount=type=cache,target="/cache" go mod download;
 7 
 8 COPY . /app/
 9-RUN --mount=type=cache,target="/cache" go build -o dist/ytrssil-api cmd/main.go;
10+RUN --mount=type=cache,target="/cache" CGO_ENABLED=0 go build -o dist/ytrssil-api cmd/main.go;
11 
12-FROM debian:trixie-slim AS api
13+FROM jauderho/yt-dlp:2026.07.04@sha256:fc9d6d337b95bfc5ab0c5fb74a16d5136ceb6dd033fc300439f475e0aa4a3831 AS api
14 
15+RUN apk add --no-cache curl
16 HEALTHCHECK --start-period=2s --start-interval=2s CMD exec curl -sf localhost:$PORT/healthz;
17 WORKDIR /app/
18-ENTRYPOINT ["./ytrssil-api"]
19+ENTRYPOINT ["dumb-init", "./ytrssil-api"]
20 VOLUME /var/lib/ytrssil/downloads
21 
22-RUN apt update \
23-	&& apt install -y ca-certificates curl yt-dlp \
24-	&& apt clean \
25-	&& rm -rf /var/lib/apt/lists/*;
26-
27 COPY ./assets/ ./assets/
28 RUN assets/load.sh && rm assets/load.sh;
29 
30diff --git a/compose.yaml b/compose.yaml
31index 2eaf10c2eb060ae5671631057f73d878f8c92349..e5e9c8525105ff045796b45dfbc28214aa831473 100644
32--- a/compose.yaml
33+++ b/compose.yaml
34@@ -26,10 +26,14 @@ services:
35     environment:
36       DB_URI: "postgresql://ytrssil:ytrssil@postgres/ytrssil?sslmode=disable"
37       PORT: "80"
38+      AUTH_TOKEN: arstneio
39+      YOUTUBE_API_KEY: AIzaSyC4sbyIWDqFt8Zk54Xq2L1Ncekysky8fAk
40+      YTDLP_COOKIES_FILE: /cookies
41     ports:
42-      - "8080:80"
43+      - "8081:80"
44     volumes:
45       - data:/var/lib/ytrssil
46+      - /home/pavle/cookies.txt:/cookies
47 
48 volumes:
49   postgres: