Files
oci_tips/23AI/app/doc-embedding-service/docker-compose.yml
2025-12-04 11:47:29 -03:00

65 lines
1.6 KiB
YAML

version: '3.8'
services:
doc-embedding-service:
build:
context: .
dockerfile: Dockerfile
container_name: doc-embedding-service
ports:
- "8000:8000"
environment:
# API Security
- API_KEY=${API_KEY}
# OCI Configuration
- OCI_CONFIG_FILE=/app/config/credentials.conf
- OCI_REGION=${OCI_REGION:-us-chicago-1}
- TEST_MODE=${TEST_MODE:-false}
# Database Configuration
- DB_USER=${DB_USER}
- DB_PASSWORD=${DB_PASSWORD}
- DB_DSN=${DB_DSN}
# Embedding Configuration
- EMBEDDING_MODEL=${EMBEDDING_MODEL:-sentence-transformers/all-MiniLM-L6-v2}
- EMBEDDING_DIMENSION=${EMBEDDING_DIMENSION:-384}
- CHUNK_SIZE=${CHUNK_SIZE:-500}
- CHUNK_OVERLAP=${CHUNK_OVERLAP:-50}
# Application Configuration
- UPLOAD_FOLDER=/app/uploads
- MAX_UPLOAD_SIZE=${MAX_UPLOAD_SIZE:-52428800}
- DEBUG_AUTH=${DEBUG_AUTH:-false}
- PORT=8000
volumes:
# Monta diretório de uploads
- ./uploads:/app/uploads
# Monta diretório de logs
- ./logs:/app/logs
# Monta configuração OCI (se existir localmente)
- ./config:/app/config:ro
# Monta chave privada OCI (se necessário)
# - /path/to/oci_api_key.pem:/app/oci_api_key.pem:ro
restart: unless-stopped
healthcheck:
test: ["CMD", "python", "-c", "import requests; requests.get('http://localhost:8000/health')"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
- doc-embedding-network
networks:
doc-embedding-network:
driver: bridge