app service¶
This page documents the configuration for the app service from docker-compose.yml.
Build context: .
Dockerfile: docker/app/Dockerfile
Container name: app
Ports:
127.0.0.1:8081:8000
Volumes:
./:/workspace:cached./docker/logging.yml:/workspace/docker/logging.yaml:ro,z./scripts/app-entrypoint.sh:/usr/local/bin/app-entrypoint.sh:ro,zlanggraph_data:/workspace/langgraph_data:z
Depends on:
redisosss_postgrestutor-db
Networks:
osss-net
Environment:
OSSS_VERBOSE_AUTH=1PYTHONUNBUFFERED=1PYTHONLOGLEVEL=DEBUGLOG_LEVEL=DEBUGUVICORN_LOG_LEVEL=debugUVICORN_ACCESS_LOG=1KEYCLOAK_ISSUER=${KEYCLOAK_ISSUER}KEYCLOAK_JWKS_URL=${KEYCLOAK_JWKS_URL}OSSS_DISABLE_AUTH=${OSSS_DISABLE_AUTH}AUTHLIB_DEBUG=1OAUTHLIB_INSECURE_TRANSPORT=1HTTPX_LOG_LEVEL=DEBUGREQUESTS_LOG_LEVEL=DEBUGJOSE_LOG_LEVEL=DEBUGJWcrypto_LOG_LEVEL=DEBUGHOST=0.0.0.0PORT=8000PYTHONPATH=/workspace/srcWATCHFILES_FORCE_POLLING=trueCORS_ALLOW_ORIGINS=${CORS_ALLOW_ORIGINS}CORS_ORIGINS=${CORS_ORIGINS}REQUESTS_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crtSSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crtCURL_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crtOIDC_DISCOVERY_URL_INTERNAL=${OIDC_DISCOVERY_URL_INTERNAL}OIDC_TOKEN_URL_INTERNAL=${OIDC_TOKEN_URL_INTERNAL}KEYCLOAK_INTERNAL_BASE=${KEYCLOAK_INTERNAL_BASE}OIDC_ISSUER=${OIDC_ISSUER}OIDC_CLIENT_ID=osss-apiOIDC_CLIENT_SECRET=${OIDC_CLIENT_SECRET:-password}OSSS_PUBLIC_BASE_URL=http://localhost:8081OIDC_REDIRECT_URL=http://localhost:8081/callbackOIDC_LOGOUT_REDIRECT_URL=http://localhost:8081/OIDC_VERIFY_AUD=0ALLOWED_CLOCK_SKEW=60REDIS_URL=redis://redis:6379/0SESSION_REDIS_HOST=redisSESSION_REDIS_PORT=6379KEYCLOAK_CLIENT_ID=osss-apiKEYCLOAK_CLIENT_SECRET=passwordASYNC_DATABASE_URL=postgresql+asyncpg://${OSSS_DB_USER}:${OSSS_DB_PASSWORD}@osss_postgres:5432/${OSSS_DB_NAME}ALEMBIC_DATABASE_URL=postgresql+asyncpg://${OSSS_DB_USER}:${OSSS_DB_PASSWORD}@osss_postgres:5432/${OSSS_DB_NAME}OIDC_JWKS_URL_INTERNAL=${OIDC_JWKS_URL_INTERNAL}OIDC_VERIFY_ISS=${OIDC_VERIFY_ISS}MIGRATIONS_DIR=/app/src/OSSS/db/migrationsREPO_ROOT=/appALEMBIC_CMD=alembicALEMBIC_INI=/app/alembic.iniOSSS_DB_PASSWORD=${OSSS_DB_PASSWORD}OSSS_DB_NAME=${OSSS_DB_NAME}OSSS_DB_USER=${OSSS_DB_USER}POSTGRES_USER=${POSTGRES_USER}POSTGRES_PASSWORD=${POSTGRES_PASSWORD}POSTGRES_DB=${POSTGRES_DB}DATABASE_URL=${ASYNC_DATABASE_URL}TUTOR_CONFIG_DIR=/app/config/tutorsOLLAMA_BASE=http://host.containers.internal:11434OSSS_TUTOR_DB_USER=${OSSS_TUTOR_DB_USER}OSSS_TUTOR_DB_PASSWORD=${OSSS_TUTOR_DB_PASSWORD}OSSS_TUTOR_DB_NAME=${OSSS_TUTOR_DB_NAME}OSSS_TUTOR_DB_HOST=tutor-dbOSSS_TUTOR_DB_PORT=5432OSSS_TUTOR_CONFIG_DIR=${OSSS_TUTOR_CONFIG_DIR}SAFE_OPENAI_API_BASE=${SAFE_OPENAI_API_BASE}OPENAI_API_BASE=${OPENAI_API_BASE}OPENAI_API_KEY=${OPENAI_API_KEY}OSSS_ADDITIONAL_INDEX_PATH=/workspace/vector_indexes/main/embeddings.jsonlTUTOR_INDEX_PATH=/workspace/vector_indexes/tutor/embeddings.jsonlAGENT_INDEX_PATH=/workspace/vector_indexes/agent/embeddings.jsonlMETAGPT_URL=http://metagpt:8001SEED_JSON_PATH=/mnt/data/seed_full_school.jsonOSSS_LANGCHAIN_PROVIDER=ollamaOLLAMA_BASE_URL=http://localhost:11434/v1OSSS_LANGCHAIN_MODEL=llama3.1:latestSKIP_GL_SEGMENTS=falseOPENBLAS_NUM_THREADS=1OMP_NUM_THREADS=1MKL_NUM_THREADS=1NUMEXPR_NUM_THREADS=1LLM_PROVIDER=ollamaOLLAMA_MODEL=llama3.1OLLAMA_TEMPERATURE=0.2OLLAMA_NUM_CTX=8192OSSS_SYNTHESIS_LLM_PROVIDER=ollamaOSSS_SYNTHESIS_MODEL=llama3.1:latestOSSS_OLLAMA_BASE_URL=http://host.containers.internal:11434OSSS_AI_DB_PERSIST_ENABLED=trueAGENT_LLM_BASE_URL=http://host:containers:internal:11434/v1OSSS_AI_GATEWAY_BASE_URL=http://host.containers.internal:11434
Command:
uvicorn src.OSSS.main:app --host 0.0.0.0 --port 8000 --reload --reload-dir /workspace/src/OSSS --log-level info --access-log --log-config /workspace/docker/logging.yaml
Labels:
co.elastic.logs/enabled = trueco.elastic.logs/processors.1.decode_json_fields.fields = messageco.elastic.logs/processors.1.decode_json_fields.target =co.elastic.logs/processors.1.decode_json_fields.overwrite_keys = trueco.elastic.logs/processors.2.add_fields.target = appco.elastic.logs/processors.2.add_fields.fields.service = osss-apico.elastic.logs/json.keys_under_root = trueco.elastic.logs/json.add_error_key = trueco.elastic.logs/json.overwrite_keys = true