nuked the local es-scrcpy

This commit is contained in:
user
2026-03-28 13:34:53 +02:00
parent 94af2a2065
commit acf7b28086
5 changed files with 191 additions and 96 deletions

View File

@@ -0,0 +1,29 @@
FROM node:25.7.0-bookworm
# System deps: ADB for device communication, build tools for native modules (node-pty)
RUN apt-get update && \
apt-get install -y android-tools-adb python3 make g++ git && \
rm -rf /var/lib/apt/lists/*
# Clone and build ws-scrcpy
WORKDIR /build
RUN git clone --depth 1 https://github.com/NetrisTV/ws-scrcpy.git . && \
npm install && \
npm run dist:prod
# Set up runtime
WORKDIR /app
RUN cp -r /build/dist/* . && \
npm install && \
rm -rf /build
# Config: Android tracker on, no iOS, HTTP on port 8000 (Traefik handles TLS)
RUN printf 'runGoogTracker: true\nrunApplTracker: false\n\nserver:\n - secure: false\n port: 8000\n' > /app/config.yaml
# Entrypoint: start ADB, connect to device if configured, then launch
RUN printf '#!/bin/bash\nset -e\nadb start-server\nif [ -n "$ADB_DEVICE_HOST" ]; then\n echo "Connecting to ADB device at $ADB_DEVICE_HOST:${ADB_DEVICE_PORT:-5555}"\n adb connect "$ADB_DEVICE_HOST:${ADB_DEVICE_PORT:-5555}"\n sleep 2\n adb devices\nfi\nexec node index.js\n' > /entrypoint.sh && \
chmod +x /entrypoint.sh
EXPOSE 8000
ENTRYPOINT ["/entrypoint.sh"]