fix(docker): run official bot (dave/bot.mjs) in container, not selfbot join.mjs

The `join` entrypoint command now execs `node dave/bot.mjs` and forwards args;
Dockerfile comments/env notes updated from DISCORD_SELFBOT_TOKEN to the official
bot path. Rebuilt watch_sceen_ai:test on .9 and verified in-container:
  * smoke -> 4 passed
  * voice -> eyes-free mock loop runs
  * join  -> LIVE bot join (테스트봇#9029) to guild 사지방 / channel 일반, Ready, clean leave

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
EJClaw
2026-08-16 18:36:24 +09:00
parent 27e449f9f1
commit 3d76cd6c52
2 changed files with 5 additions and 5 deletions

View File

@@ -3,7 +3,7 @@
# Bundles everything the current M1 milestone needs: # Bundles everything the current M1 milestone needs:
# * CUDA runtime (so future faster-whisper / TTS can use the GPU) # * CUDA runtime (so future faster-whisper / TTS can use the GPU)
# * Python 3.11 (STT/TTS asset compat per README) for the wsai voice pipeline # * Python 3.11 (STT/TTS asset compat per README) for the wsai voice pipeline
# * Node 22 + ffmpeg for the dave/ selfbot voice joiner (DAVE/MLS E2EE) # * Node 22 + ffmpeg for the dave/ official-bot voice joiner (DAVE/MLS E2EE)
# #
# STT/TTS/Brain are still mock at this milestone, so nothing GPU-heavy runs yet; # STT/TTS/Brain are still mock at this milestone, so nothing GPU-heavy runs yet;
# the image is built GPU-capable so the next milestones drop straight in. # the image is built GPU-capable so the next milestones drop straight in.
@@ -40,7 +40,7 @@ COPY requirements.txt PLAN.md README.md ./
COPY docker-entrypoint.sh /usr/local/bin/entrypoint COPY docker-entrypoint.sh /usr/local/bin/entrypoint
RUN chmod +x /usr/local/bin/entrypoint RUN chmod +x /usr/local/bin/entrypoint
# .env (DISCORD_SELFBOT_TOKEN) is NOT baked in — mount it at runtime: # .env (DISCORD_BOT_TOKEN) is NOT baked in — mount it at runtime:
# -v $(pwd)/.env:/app/.env:ro # -v $(pwd)/.env:/app/.env:ro
ENTRYPOINT ["entrypoint"] ENTRYPOINT ["entrypoint"]
CMD ["smoke"] CMD ["smoke"]

View File

@@ -5,8 +5,8 @@
# voice python -m wsai --voice (eyes-free mock voice loop demo) # voice python -m wsai --voice (eyes-free mock voice loop demo)
# mock python -m wsai (full mock flow, few frames) # mock python -m wsai (full mock flow, few frames)
# gpu nvidia-smi — prove the GPU is visible inside the container # gpu nvidia-smi — prove the GPU is visible inside the container
# join node dave/join.mjs — LIVE selfbot voice join (needs .env # join node dave/bot.mjs — LIVE official-bot voice join (needs .env
# mounted; honors RUN_MS / GUILD_ID / CHANNEL_ID / SELF_ID) # mounted; honors RUN_MS / GUILD_ID / CHANNEL_ID)
# shell drop to bash # shell drop to bash
set -euo pipefail set -euo pipefail
cd /app cd /app
@@ -18,7 +18,7 @@ case "$cmd" in
voice) exec python -m wsai --voice ;; voice) exec python -m wsai --voice ;;
mock) exec python -m wsai ;; mock) exec python -m wsai ;;
gpu) exec nvidia-smi ;; gpu) exec nvidia-smi ;;
join) cd dave && exec node join.mjs ;; join) cd dave && exec node bot.mjs "$@" ;;
shell) exec bash ;; shell) exec bash ;;
*) exec "$cmd" "$@" ;; *) exec "$cmd" "$@" ;;
esac esac