chore: sync current workspace to dev

This commit is contained in:
qzl
2026-02-24 18:18:42 +08:00
parent 105cf82d21
commit 08571cfc95
79 changed files with 1899 additions and 844 deletions
+5 -124
View File
@@ -389,130 +389,9 @@ services:
command:
["/bin/sh", "-c", "/app/bin/migrate && /app/bin/supavisor eval \"$$(cat /etc/pooler/pooler.exs)\" && /app/bin/server"]
web:
build:
context: ../..
dockerfile: backend/Dockerfile
image: social-local-backend
container_name: social-local-web
restart: unless-stopped
ports:
- "${SOCIAL_WEB__PORT:-8000}:8000"
environment:
- PYTHONPATH=/app/backend/src
- SOCIAL_DATABASE__HOST=db
- SOCIAL_DATABASE__PORT=5432
- SOCIAL_DATABASE__PASSWORD=${SOCIAL_DATABASE__PASSWORD}
- SOCIAL_REDIS__HOST=redis
- SOCIAL_REDIS__PORT=6379
- SOCIAL_REDIS__PASSWORD=${SOCIAL_REDIS__PASSWORD:-}
- SOCIAL_SUPABASE__ANON_KEY=${SOCIAL_SUPABASE__ANON_KEY}
- SOCIAL_SUPABASE__SERVICE_ROLE_KEY=${SOCIAL_SUPABASE__SERVICE_ROLE_KEY}
- SOCIAL_SUPABASE__JWT_SECRET=${SOCIAL_SUPABASE__JWT_SECRET}
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-dev}
- SOCIAL_WEB__HOST=${SOCIAL_WEB__HOST:-0.0.0.0}
- SOCIAL_WEB__PORT=${SOCIAL_WEB__PORT:-8000}
depends_on:
db:
condition: service_healthy
redis:
condition: service_started
working_dir: /app/backend
command: >
sh -c "uv run gunicorn app:app --bind ${SOCIAL_WEB__HOST:-0.0.0.0}:${SOCIAL_WEB__PORT:-8000} --workers $${SOCIAL_WEB__GUNICORN__WORKERS:-2} --worker-class $${SOCIAL_WEB__GUNICORN__WORKER_CLASS:-uvicorn.workers.UvicornWorker} --timeout $${SOCIAL_WEB__GUNICORN__TIMEOUT:-60}"
healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8000/health"]
interval: 10s
timeout: 5s
retries: 3
start_period: 15s
worker-critical:
build:
context: ../..
dockerfile: backend/Dockerfile
image: social-local-backend
container_name: social-local-worker-critical
restart: unless-stopped
environment:
- PYTHONPATH=/app/backend/src
- SOCIAL_DATABASE__HOST=db
- SOCIAL_DATABASE__PORT=5432
- SOCIAL_DATABASE__PASSWORD=${SOCIAL_DATABASE__PASSWORD}
- SOCIAL_REDIS__HOST=redis
- SOCIAL_REDIS__PORT=6379
- SOCIAL_REDIS__PASSWORD=${SOCIAL_REDIS__PASSWORD:-}
- SOCIAL_SUPABASE__ANON_KEY=${SOCIAL_SUPABASE__ANON_KEY}
- SOCIAL_SUPABASE__SERVICE_ROLE_KEY=${SOCIAL_SUPABASE__SERVICE_ROLE_KEY}
- SOCIAL_SUPABASE__JWT_SECRET=${SOCIAL_SUPABASE__JWT_SECRET}
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-dev}
depends_on:
db:
condition: service_healthy
redis:
condition: service_started
working_dir: /app/backend
command: uv run celery -A core.celery.app worker --loglevel=info --queues=critical --concurrency=2
profiles:
- worker
worker-default:
build:
context: ../..
dockerfile: backend/Dockerfile
image: social-local-backend
container_name: social-local-worker-default
restart: unless-stopped
environment:
- PYTHONPATH=/app/backend/src
- SOCIAL_DATABASE__HOST=db
- SOCIAL_DATABASE__PORT=5432
- SOCIAL_DATABASE__PASSWORD=${SOCIAL_DATABASE__PASSWORD}
- SOCIAL_REDIS__HOST=redis
- SOCIAL_REDIS__PORT=6379
- SOCIAL_REDIS__PASSWORD=${SOCIAL_REDIS__PASSWORD:-}
- SOCIAL_SUPABASE__ANON_KEY=${SOCIAL_SUPABASE__ANON_KEY}
- SOCIAL_SUPABASE__SERVICE_ROLE_KEY=${SOCIAL_SUPABASE__SERVICE_ROLE_KEY}
- SOCIAL_SUPABASE__JWT_SECRET=${SOCIAL_SUPABASE__JWT_SECRET}
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-dev}
depends_on:
db:
condition: service_healthy
redis:
condition: service_started
working_dir: /app/backend
command: uv run celery -A core.celery.app worker --loglevel=info --queues=default --concurrency=2
profiles:
- worker
worker-bulk:
build:
context: ../..
dockerfile: backend/Dockerfile
image: social-local-backend
container_name: social-local-worker-bulk
restart: unless-stopped
environment:
- PYTHONPATH=/app/backend/src
- SOCIAL_DATABASE__HOST=db
- SOCIAL_DATABASE__PORT=5432
- SOCIAL_DATABASE__PASSWORD=${SOCIAL_DATABASE__PASSWORD}
- SOCIAL_REDIS__HOST=redis
- SOCIAL_REDIS__PORT=6379
- SOCIAL_REDIS__PASSWORD=${SOCIAL_REDIS__PASSWORD:-}
- SOCIAL_SUPABASE__ANON_KEY=${SOCIAL_SUPABASE__ANON_KEY}
- SOCIAL_SUPABASE__SERVICE_ROLE_KEY=${SOCIAL_SUPABASE__SERVICE_ROLE_KEY}
- SOCIAL_SUPABASE__JWT_SECRET=${SOCIAL_SUPABASE__JWT_SECRET}
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-dev}
depends_on:
db:
condition: service_healthy
redis:
condition: service_started
working_dir: /app/backend
command: uv run celery -A core.celery.app worker --loglevel=info --queues=bulk --concurrency=1
profiles:
- worker
# 开发阶段暂时禁用业务镜像(web/worker)。
# 如需恢复,请从 git 历史恢复以下服务定义:web, worker-critical,
# worker-default, worker-bulk。
init-job:
build:
@@ -538,6 +417,8 @@ services:
condition: service_healthy
working_dir: /app/backend
command: uv run python -m core.runtime.cli bootstrap
profiles:
- job
volumes:
redis_data: