feat: migrate orchestration to n8n and validate lan mvp
This commit is contained in:
@@ -1,56 +1,30 @@
|
||||
version: "3.9"
|
||||
|
||||
services:
|
||||
mongo:
|
||||
image: mongo:6
|
||||
container_name: storyforge-mongo
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "27017:27017"
|
||||
volumes:
|
||||
- ./data/mongo:/data/db
|
||||
|
||||
vectorDB:
|
||||
image: pgvector/pgvector:pg16
|
||||
container_name: storyforge-pgvector
|
||||
n8n:
|
||||
image: ${N8N_IMAGE:-docker.n8n.io/n8nio/n8n:latest}
|
||||
container_name: storyforge-n8n
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
POSTGRES_DB: ${POSTGRES_DB:-fastgpt}
|
||||
POSTGRES_USER: ${POSTGRES_USER:-postgres}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres}
|
||||
N8N_HOST: ${N8N_HOST:-0.0.0.0}
|
||||
N8N_PORT: 5678
|
||||
N8N_PROTOCOL: ${N8N_PROTOCOL:-http}
|
||||
WEBHOOK_URL: ${WEBHOOK_URL:-http://127.0.0.1:5670/}
|
||||
GENERIC_TIMEZONE: ${GENERIC_TIMEZONE:-Asia/Shanghai}
|
||||
TZ: ${TZ:-Asia/Shanghai}
|
||||
N8N_SECURE_COOKIE: ${N8N_SECURE_COOKIE:-false}
|
||||
N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS: ${N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS:-false}
|
||||
ports:
|
||||
- "5432:5432"
|
||||
- "5670:5678"
|
||||
volumes:
|
||||
- ./data/pg:/var/lib/postgresql/data
|
||||
|
||||
redis:
|
||||
image: redis:7-alpine
|
||||
container_name: storyforge-redis
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "6379:6379"
|
||||
volumes:
|
||||
- ./data/redis:/data
|
||||
|
||||
minio:
|
||||
image: minio/minio:RELEASE.2025-02-07T23-21-09Z
|
||||
container_name: storyforge-minio
|
||||
restart: unless-stopped
|
||||
command: server /data --console-address ":9001"
|
||||
environment:
|
||||
MINIO_ROOT_USER: ${MINIO_ROOT_USER:-minioadmin}
|
||||
MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD:-minioadmin}
|
||||
ports:
|
||||
- "9000:9000"
|
||||
- "9001:9001"
|
||||
volumes:
|
||||
- ./data/minio:/data
|
||||
- ./data/n8n:/home/node/.n8n
|
||||
- ./n8n:/workspace/n8n:ro
|
||||
|
||||
collector:
|
||||
build:
|
||||
context: ./collector-service
|
||||
container_name: storyforge-collector
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- n8n
|
||||
environment:
|
||||
DATA_DIR: /data/collector
|
||||
DATABASE_PATH: /data/collector/storyforge.db
|
||||
@@ -58,40 +32,29 @@ services:
|
||||
LOCAL_OPENAI_BASE_URL: ${LOCAL_OPENAI_BASE_URL:-http://host.docker.internal:8317/v1}
|
||||
LOCAL_OPENAI_MODEL: ${LOCAL_OPENAI_MODEL:-GLM-5}
|
||||
LOCAL_OPENAI_API_KEY: ${LOCAL_OPENAI_API_KEY:-}
|
||||
FASTGPT_BASE_URL: ${FASTGPT_BASE_URL:-http://host.docker.internal:3000}
|
||||
FASTGPT_DATASET_API_KEY: ${FASTGPT_DATASET_API_KEY:-}
|
||||
N8N_BASE_URL: ${N8N_BASE_URL:-http://n8n:5678}
|
||||
N8N_ANALYSIS_WEBHOOK_PATH: ${N8N_ANALYSIS_WEBHOOK_PATH:-/webhook/storyforge-analysis}
|
||||
N8N_REAL_CUT_WEBHOOK_PATH: ${N8N_REAL_CUT_WEBHOOK_PATH:-/webhook/storyforge-real-cut}
|
||||
N8N_AI_VIDEO_WEBHOOK_PATH: ${N8N_AI_VIDEO_WEBHOOK_PATH:-/webhook/storyforge-ai-video}
|
||||
ORCHESTRATOR_SHARED_SECRET: ${ORCHESTRATOR_SHARED_SECRET:-storyforge-local-secret}
|
||||
CUTVIDEO_BASE_URL: ${CUTVIDEO_BASE_URL:-}
|
||||
CUTVIDEO_API_KEY: ${CUTVIDEO_API_KEY:-}
|
||||
CUTVIDEO_BASE_CONFIG: ${CUTVIDEO_BASE_CONFIG:-example.job.yaml}
|
||||
CUTVIDEO_POLL_INTERVAL_SEC: ${CUTVIDEO_POLL_INTERVAL_SEC:-10}
|
||||
CUTVIDEO_MAX_WAIT_SEC: ${CUTVIDEO_MAX_WAIT_SEC:-1800}
|
||||
HUOBAO_BASE_URL: ${HUOBAO_BASE_URL:-http://host.docker.internal:5678}
|
||||
YTDLP_BIN: ${YTDLP_BIN:-yt-dlp}
|
||||
FFMPEG_BIN: ${FFMPEG_BIN:-ffmpeg}
|
||||
WHISPER_BIN: ${WHISPER_BIN:-}
|
||||
WHISPER_MODEL: ${WHISPER_MODEL:-/data/collector/models/ggml-base.en.bin}
|
||||
HUOBAO_POLL_INTERVAL_SEC: ${HUOBAO_POLL_INTERVAL_SEC:-10}
|
||||
HUOBAO_MAX_WAIT_SEC: ${HUOBAO_MAX_WAIT_SEC:-900}
|
||||
ports:
|
||||
- "8081:8081"
|
||||
volumes:
|
||||
- ./data/collector:/data/collector
|
||||
command: uvicorn app.main:app --host 0.0.0.0 --port 8081
|
||||
|
||||
fastgpt:
|
||||
image: ghcr.io/labring/fastgpt:latest
|
||||
container_name: storyforge-fastgpt
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- mongo
|
||||
- vectorDB
|
||||
- redis
|
||||
- minio
|
||||
ports:
|
||||
- "3000:3000"
|
||||
|
||||
sandbox:
|
||||
image: ghcr.io/labring/fastgpt-sandbox:latest
|
||||
container_name: storyforge-sandbox
|
||||
restart: unless-stopped
|
||||
|
||||
fastgpt-plugin:
|
||||
image: ghcr.io/labring/fastgpt-plugin:latest
|
||||
container_name: storyforge-fastgpt-plugin
|
||||
restart: unless-stopped
|
||||
|
||||
cli-proxy-api:
|
||||
image: ${CLIPROXY_IMAGE:-storyforge/cli-proxy-api:patched}
|
||||
container_name: storyforge-cliproxyapi
|
||||
|
||||
Reference in New Issue
Block a user