chore(page): 대시보드 배포 스캐폴딩 추가(Dockerfile + compose 예시, OAuth redirect 안내)
This commit is contained in:
21
page/Dockerfile
Normal file
21
page/Dockerfile
Normal file
@@ -0,0 +1,21 @@
|
||||
# music_bot_v2 대시보드(page/) — Next.js 16
|
||||
FROM node:20-alpine
|
||||
WORKDIR /app
|
||||
|
||||
COPY package*.json ./
|
||||
RUN npm install
|
||||
|
||||
COPY . .
|
||||
|
||||
# next build 시 라우트 모듈 평가 단계에서 env 미설정이면 throw 되므로, 빌드용 더미 env를 넣는다.
|
||||
# (실제 값은 런타임에 compose의 environment로 주입 — 아래 값은 빌드 통과용 placeholder)
|
||||
ENV DISCORD_CLIENT_ID=build \
|
||||
DISCORD_CLIENT_SECRET=build \
|
||||
NEXTAUTH_SECRET=build \
|
||||
NEXTAUTH_URL=http://localhost:3000 \
|
||||
REDIS_HOST=127.0.0.1 \
|
||||
REDIS_PORT=6379
|
||||
RUN npm run build
|
||||
|
||||
EXPOSE 3000
|
||||
CMD ["npm", "run", "start"]
|
||||
21
page/docker-compose.example.yml
Normal file
21
page/docker-compose.example.yml
Normal file
@@ -0,0 +1,21 @@
|
||||
# music_bot_v2 대시보드(page/) 배포 예시.
|
||||
# 운영 .5 호스트에서는 /root/bot/ 아래에 이 내용을 두고 `docker compose -f ... up -d --build` 로 띄운다.
|
||||
#
|
||||
# ⚠️ 로그인(Discord OAuth) 전제조건:
|
||||
# Discord 개발자 포털 → music_bot 앱(APPID 1412338882934079498) → OAuth2 → Redirects 에
|
||||
# "<NEXTAUTH_URL>/api/auth/callback/discord" 를 반드시 등록해야 로그인이 된다.
|
||||
# (테스트 포트로 띄우면 예: http://192.168.10.5:2960/api/auth/callback/discord)
|
||||
services:
|
||||
music_site_test:
|
||||
build: ./music_bot_v2/page # (테스트 시엔 page-improvements 브랜치 체크아웃 상태)
|
||||
container_name: music_site_test
|
||||
restart: always
|
||||
ports:
|
||||
- "2960:3000" # 테스트용 포트(다른 사이트와 겹치지 않게)
|
||||
environment:
|
||||
- DISCORD_CLIENT_ID=1412338882934079498
|
||||
- DISCORD_CLIENT_SECRET=<music_bot 앱 client_secret>
|
||||
- NEXTAUTH_SECRET=<openssl rand -base64 32 로 생성>
|
||||
- NEXTAUTH_URL=http://192.168.10.5:2960
|
||||
- REDIS_HOST=192.168.10.7 # 운영 봇과 같은 Redis(실봇 제어·상태 테스트). 격리 원하면 별도 Redis.
|
||||
- REDIS_PORT=6379
|
||||
Reference in New Issue
Block a user