포트 18711, REDIS_URL/NAS_BASE_URL/INTERNAL_API_KEY/SUNO_API_KEY/MUSIC_AI_SERVER_URL env. host.docker.internal 매핑 (MusicGen native 호스트). SMB /mnt/nas/webpage/data/music 마운트. Plan-B-Music Phase 2 완료 — 박재오 머신에서 .env 작성 + 빌드 + 시작 대기. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
52 lines
1.8 KiB
YAML
52 lines
1.8 KiB
YAML
name: web-ai-services
|
|
|
|
services:
|
|
insta-render:
|
|
build:
|
|
context: ./insta-render
|
|
container_name: insta-render
|
|
restart: unless-stopped
|
|
ports:
|
|
- "18710:8000"
|
|
environment:
|
|
- TZ=Asia/Seoul
|
|
- REDIS_URL=${REDIS_URL:-redis://192.168.45.54:6379}
|
|
- NAS_BASE_URL=${NAS_BASE_URL:-http://192.168.45.54:18700}
|
|
- INTERNAL_API_KEY=${INTERNAL_API_KEY:-}
|
|
- INSTA_MEDIA_ROOT=${INSTA_MEDIA_ROOT:-/mnt/nas/webpage/data/insta}
|
|
- INSTA_MEDIA_URL_PREFIX=${INSTA_MEDIA_URL_PREFIX:-/media/insta}
|
|
- CARD_TEMPLATE_DIR=/app/templates
|
|
volumes:
|
|
- /mnt/nas/webpage/data/insta:/mnt/nas/webpage/data/insta
|
|
healthcheck:
|
|
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"]
|
|
interval: 60s
|
|
timeout: 5s
|
|
retries: 3
|
|
|
|
music-render:
|
|
build:
|
|
context: ./music-render
|
|
container_name: music-render
|
|
restart: unless-stopped
|
|
ports:
|
|
- "18711:8000"
|
|
environment:
|
|
- TZ=Asia/Seoul
|
|
- REDIS_URL=${REDIS_URL:-redis://192.168.45.54:6379}
|
|
- NAS_BASE_URL=${NAS_BASE_URL:-http://192.168.45.54:18600}
|
|
- INTERNAL_API_KEY=${INTERNAL_API_KEY:-}
|
|
- SUNO_API_KEY=${SUNO_API_KEY:-}
|
|
- MUSIC_AI_SERVER_URL=${MUSIC_AI_SERVER_URL:-http://host.docker.internal:8765}
|
|
- MUSIC_MEDIA_ROOT=${MUSIC_MEDIA_ROOT:-/mnt/nas/webpage/data/music}
|
|
- MUSIC_MEDIA_URL_PREFIX=${MUSIC_MEDIA_URL_PREFIX:-/media/music}
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
volumes:
|
|
- /mnt/nas/webpage/data/music:/mnt/nas/webpage/data/music
|
|
healthcheck:
|
|
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"]
|
|
interval: 60s
|
|
timeout: 5s
|
|
retries: 3
|