nuked the local es-scrcpy
This commit is contained in:
@@ -1,47 +0,0 @@
|
||||
FROM node:25.6.1-bookworm-slim AS app-builder
|
||||
|
||||
ARG ANDROID_SDK_ROOT=/opt/android-sdk
|
||||
ARG ANDROID_CMDLINE_TOOLS_VERSION=13114758
|
||||
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
bash \
|
||||
ca-certificates \
|
||||
curl \
|
||||
git \
|
||||
openjdk-17-jdk \
|
||||
unzip \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ENV JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
|
||||
ENV ANDROID_SDK_ROOT=${ANDROID_SDK_ROOT}
|
||||
ENV ANDROID_HOME=${ANDROID_SDK_ROOT}
|
||||
ENV PATH=${JAVA_HOME}/bin:${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin:${ANDROID_SDK_ROOT}/platform-tools:${PATH}
|
||||
|
||||
RUN mkdir -p ${ANDROID_SDK_ROOT}/cmdline-tools /tmp/android-sdk && \
|
||||
curl -fsSL -o /tmp/android-sdk/cmdline-tools.zip \
|
||||
https://dl.google.com/android/repository/commandlinetools-linux-${ANDROID_CMDLINE_TOOLS_VERSION}_latest.zip && \
|
||||
unzip -q /tmp/android-sdk/cmdline-tools.zip -d /tmp/android-sdk && \
|
||||
mv /tmp/android-sdk/cmdline-tools ${ANDROID_SDK_ROOT}/cmdline-tools/latest && \
|
||||
yes | sdkmanager --licenses > /dev/null && \
|
||||
sdkmanager \
|
||||
"platform-tools" \
|
||||
"platforms;android-36" \
|
||||
"build-tools;36.0.0" && \
|
||||
rm -rf /tmp/android-sdk
|
||||
|
||||
RUN npm i -g pnpm
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml turbo.json ./
|
||||
COPY apps/app-builder/package.json ./apps/app-builder/package.json
|
||||
COPY packages ./packages
|
||||
|
||||
RUN pnpm install --frozen-lockfile
|
||||
|
||||
COPY apps/app-builder ./apps/app-builder
|
||||
COPY mobile ./mobile
|
||||
|
||||
EXPOSE 3000
|
||||
|
||||
CMD ["pnpm", "--filter", "@apps/app-builder", "run", "prod"]
|
||||
@@ -1,21 +0,0 @@
|
||||
FROM node:25.6.1-alpine AS deps
|
||||
|
||||
RUN npm i -g pnpm
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml turbo.json ./
|
||||
|
||||
COPY apps/processor/package.json ./apps/processor/package.json
|
||||
|
||||
COPY packages ./packages
|
||||
|
||||
RUN pnpm install --frozen-lockfile
|
||||
|
||||
COPY apps/processor ./apps/processor
|
||||
|
||||
RUN pnpm install
|
||||
|
||||
EXPOSE 3000
|
||||
|
||||
CMD ["pnpm", "--filter", "@apps/processor", "run", "prod"]
|
||||
29
dockerfiles/ws_scrcpy.Dockerfile
Normal file
29
dockerfiles/ws_scrcpy.Dockerfile
Normal 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"]
|
||||
Reference in New Issue
Block a user