Use external DB/Redis in compose and preserve auth session across rebuilds

This commit is contained in:
Ruslan Bakiev
2026-02-19 17:01:00 +07:00
parent f6fd11b3c4
commit a25049989c
4 changed files with 37 additions and 44 deletions

View File

@@ -3,18 +3,12 @@ services:
image: node:22-bookworm-slim
working_dir: /app/Frontend
volumes:
# Mount only the app source; keep node_modules inside the container to avoid
# leaking absolute host paths into Nuxt/Nitro dev runtime.
- ./Frontend:/app/Frontend
- clientsflow_data:/app/.data
- frontend_node_modules:/app/Frontend/node_modules
- frontend_nuxt:/app/Frontend/.nuxt
- frontend_output:/app/Frontend/.output
expose:
- "3000"
environment:
DATABASE_URL: "postgresql://postgres:postgres@postgres:5432/clientsflow?schema=public"
REDIS_URL: "redis://redis:6379"
DATABASE_URL: "${DATABASE_URL:-postgresql://postgres:dpb6gmj1umjhohso@crm-sql-q57r8m:5432/postgres?schema=public}"
REDIS_URL: "${REDIS_URL:-redis://default:nw0mv1pemhnbh7gw@crm-redis-vkpxku:6379}"
CF_AGENT_MODE: "langgraph"
OPENROUTER_API_KEY: "${OPENROUTER_API_KEY:-}"
OPENROUTER_BASE_URL: "https://openrouter.ai/api/v1"
@@ -24,6 +18,7 @@ services:
OPENROUTER_REASONING_ENABLED: "${OPENROUTER_REASONING_ENABLED:-1}"
CF_WHISPER_MODEL: "${CF_WHISPER_MODEL:-Xenova/whisper-small}"
CF_WHISPER_LANGUAGE: "${CF_WHISPER_LANGUAGE:-ru}"
CF_RUN_SEED_ON_START: "${CF_RUN_SEED_ON_START:-0}"
LANGFUSE_ENABLED: "${LANGFUSE_ENABLED:-true}"
LANGFUSE_BASE_URL: "${LANGFUSE_BASE_URL:-http://langfuse-web:3000}"
LANGFUSE_PUBLIC_KEY: "${LANGFUSE_PUBLIC_KEY:-pk-lf-local}"
@@ -36,47 +31,28 @@ services:
./scripts/compose-dev.sh
"
depends_on:
- redis
- postgres
- langfuse-web
networks:
- default
- dokploy-network
delivery-worker:
image: node:22-bookworm-slim
working_dir: /app/Frontend
volumes:
- ./Frontend:/app/Frontend
- clientsflow_data:/app/.data
- delivery_node_modules:/app/Frontend/node_modules
environment:
DATABASE_URL: "postgresql://postgres:postgres@postgres:5432/clientsflow?schema=public"
REDIS_URL: "redis://redis:6379"
DATABASE_URL: "${DATABASE_URL:-postgresql://postgres:dpb6gmj1umjhohso@crm-sql-q57r8m:5432/postgres?schema=public}"
REDIS_URL: "${REDIS_URL:-redis://default:nw0mv1pemhnbh7gw@crm-redis-vkpxku:6379}"
TELEGRAM_API_BASE: "${TELEGRAM_API_BASE:-https://api.telegram.org}"
TELEGRAM_BOT_TOKEN: "${TELEGRAM_BOT_TOKEN:-}"
command: >
bash -lc "
bash ./scripts/compose-worker.sh
"
depends_on:
- redis
- postgres
redis:
image: redis:7-alpine
expose:
- "6379"
volumes:
- redis_data:/data
postgres:
image: postgres:16-alpine
expose:
- "5432"
environment:
POSTGRES_DB: "clientsflow"
POSTGRES_USER: "postgres"
POSTGRES_PASSWORD: "postgres"
volumes:
- postgres_data:/var/lib/postgresql/data
networks:
- default
- dokploy-network
langfuse-worker:
image: docker.io/langfuse/langfuse-worker:3
@@ -210,14 +186,11 @@ services:
start_period: 5s
volumes:
clientsflow_data:
frontend_node_modules:
delivery_node_modules:
frontend_nuxt:
frontend_output:
redis_data:
postgres_data:
langfuse_postgres_data:
langfuse_clickhouse_data:
langfuse_clickhouse_logs:
langfuse_minio_data:
networks:
dokploy-network:
external: true