v0.2.11 /relay/capabilities + /relay/transcribe-url (yt-dlp in container)
This commit is contained in:
+15
-4
@@ -1,9 +1,10 @@
|
||||
# ─────────────────────────────────────────────────────────
|
||||
# Recap Relay — StartOS 0.4 Docker image
|
||||
#
|
||||
# Includes: Node.js 20 only. No yt-dlp / ffmpeg / Python — the relay
|
||||
# receives audio buffers from Recap clients and forwards to Gemini's
|
||||
# File API; no local audio processing.
|
||||
# Includes: Node.js 20 + yt-dlp + ffmpeg + Python. yt-dlp + ffmpeg are
|
||||
# needed by the /relay/transcribe-url endpoint, which downloads
|
||||
# YouTube / direct-audio URLs server-side so Recap clients don't have
|
||||
# to ship the audio over their own (often slow) upstream.
|
||||
#
|
||||
# Uses Debian slim for the same reason Recap does — pip-free, but
|
||||
# pulled-in C deps from npm packages prefer glibc over musl.
|
||||
@@ -32,10 +33,20 @@ WORKDIR /app
|
||||
# Runtime deps:
|
||||
# - dumb-init: PID 1 signal handling
|
||||
# - ca-certificates: HTTPS for Gemini + Keysat
|
||||
# - python3 + pip: yt-dlp installation
|
||||
# - ffmpeg: audio extraction (yt-dlp invokes it for -x)
|
||||
# - curl: yt-dlp self-update fallback
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
dumb-init \
|
||||
ca-certificates \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
curl \
|
||||
python3 \
|
||||
python3-pip \
|
||||
python3-venv \
|
||||
ffmpeg \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& pip3 install --break-system-packages yt-dlp \
|
||||
&& yt-dlp --version
|
||||
|
||||
# Copy installed deps + app code from builder
|
||||
COPY --from=builder /app/vendor ./vendor/
|
||||
|
||||
Reference in New Issue
Block a user