Spaces:
Running
Running
File size: 2,511 Bytes
edfa748 011144d edfa748 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | version: '3.8'
services:
app:
build: .
ports:
- "7860:7860"
volumes:
# Persist audit logs generated by the app container to the host
# The path inside the container is /app/tensorus_audit.log as defined in tensorus/audit.py (implicitly if WORKDIR is /app)
- ./tensorus_audit.log:/app/tensorus_audit.log
environment:
# Python settings
PYTHONUNBUFFERED: 1
# Tensorus App Settings
TENSORUS_STORAGE_BACKEND: postgres
TENSORUS_POSTGRES_HOST: db # Service name of the postgres container
TENSORUS_POSTGRES_PORT: 5432 # Default postgres port, container to container
TENSORUS_POSTGRES_USER: tensorus_user_compose
TENSORUS_POSTGRES_PASSWORD: tensorus_password_compose
TENSORUS_POSTGRES_DB: tensorus_db_compose
# TENSORUS_POSTGRES_DSN: "" # Can be set if preferred over individual params
TENSORUS_API_KEY_HEADER_NAME: "X-API-KEY"
TENSORUS_VALID_API_KEYS: "compose_key1,another_secure_key" # Comma-separated or JSON list of keys
TENSORUS_AUTH_JWT_ENABLED: "False"
# TENSORUS_AUTH_JWT_ISSUER: "your_issuer_here"
# TENSORUS_AUTH_JWT_AUDIENCE: "tensorus_api_audience"
# TENSORUS_AUTH_JWT_ALGORITHM: "RS256"
# TENSORUS_AUTH_JWT_JWKS_URI: "your_jwks_uri_here"
TENSORUS_AUTH_DEV_MODE_ALLOW_DUMMY_JWT: "False"
depends_on:
db:
condition: service_healthy # Wait for db to be healthy (Postgres specific healthcheck needed in db service)
# For simpler startup without healthcheck, just `depends_on: - db` is fine,
# but app might start before DB is ready. Entrypoint script in app can handle retries then.
db:
image: postgres:15-alpine
volumes:
- postgres_data:/var/lib/postgresql/data/ # Persist data
environment:
POSTGRES_USER: tensorus_user_compose # Must match app's TENSORUS_POSTGRES_USER
POSTGRES_PASSWORD: tensorus_password_compose # Must match app's TENSORUS_POSTGRES_PASSWORD
POSTGRES_DB: tensorus_db_compose # Must match app's TENSORUS_POSTGRES_DB
ports:
- "5433:5432" # Expose Postgres on host port 5433 to avoid conflict if local PG runs on 5432
healthcheck: # Basic healthcheck for Postgres
test: ["CMD-SHELL", "pg_isready -U tensorus_user_compose -d tensorus_db_compose"]
interval: 10s
timeout: 5s
retries: 5
volumes:
postgres_data: # Defines the named volume for data persistence
driver: local
|