Files
afilmory/docker-compose.yml
Innei 6a4f868a5a feat(docker): add Docker Compose configuration for database and caching services
- Introduced a new `docker-compose.yml` file to define services for PostgreSQL and Redis, facilitating local development and testing.
- Configured health checks for both services to ensure they are ready before the core application starts.
- Set up environment variables for the PostgreSQL service to manage user credentials and database initialization.
- Added volume mappings for persistent data storage in both PostgreSQL and Redis.

refactor(auth): streamline tenant context resolution and error handling

- Simplified the `AuthGuard` to throw a `BizException` with a detailed message when tenant IDs do not match.
- Removed unnecessary response header settings in the `TenantContextResolver` and middleware, improving clarity and maintainability.
- Updated various controllers and services to utilize the new tenant context handling logic, ensuring consistent behavior across the application.

feat(super-admin): implement builder debug functionality

- Added `SuperAdminBuilderDebugController` to handle image debugging requests with progress tracking.
- Introduced an in-memory storage provider for debugging purposes, allowing for temporary file uploads and processing.
- Enhanced the dashboard with a new debug page for super admins to test and validate image processing workflows.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-13 23:43:22 +08:00

63 lines
1.4 KiB
YAML

version: '3.9'
services:
db:
image: postgres:16-alpine
container_name: afilmory_db
environment:
POSTGRES_USER: afilmory
POSTGRES_PASSWORD: afilmory
POSTGRES_DB: afilmory
ports:
- '5432:5432'
volumes:
- pgdata:/var/lib/postgresql/data
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U $$POSTGRES_USER']
interval: 5s
timeout: 5s
retries: 20
start_period: 5s
redis:
image: redis:7-alpine
container_name: afilmory_redis
command: ['redis-server', '--appendonly', 'yes']
ports:
- '6379:6379'
volumes:
- redisdata:/data
healthcheck:
test: ['CMD', 'redis-cli', 'ping']
interval: 5s
timeout: 3s
retries: 30
start_period: 5s
core:
container_name: afilmory_core
build:
context: .
dockerfile: Dockerfile.core
target: runner
environment:
NODE_ENV: production
HOSTNAME: '0.0.0.0'
PORT: '1841'
DATABASE_URL: 'postgresql://afilmory:afilmory@db:5432/afilmory'
REDIS_URL: 'redis://redis:6379/0'
CONFIG_ENCRYPTION_KEY: '756256a24394342622db58ee05ee61a64a3ae14c22d4fe665b753cba0fa6333e'
depends_on:
db:
condition: service_healthy
redis:
condition: service_healthy
ports:
- '1841:1841'
restart: unless-stopped
volumes:
pgdata:
redisdata: