mirror of
https://github.com/A6-9V/MQL5-Google-Onedrive.git
synced 2026-04-10 20:40:56 +00:00
219 lines
8.7 KiB
YAML
219 lines
8.7 KiB
YAML
volumes:
|
|
pentagi-data:
|
|
driver: local
|
|
pentagi-ssl:
|
|
driver: local
|
|
scraper-ssl:
|
|
driver: local
|
|
pentagi-postgres-data:
|
|
driver: local
|
|
|
|
networks:
|
|
pentagi-network:
|
|
driver: bridge
|
|
name: pentagi-network
|
|
observability-network:
|
|
driver: bridge
|
|
name: observability-network
|
|
langfuse-network:
|
|
driver: bridge
|
|
name: langfuse-network
|
|
|
|
services:
|
|
pentagi:
|
|
image: ${PENTAGI_IMAGE:-vxcontrol/pentagi:latest}
|
|
restart: unless-stopped
|
|
container_name: pentagi
|
|
hostname: pentagi
|
|
expose:
|
|
- 8443/tcp
|
|
ports:
|
|
- ${PENTAGI_LISTEN_IP:-127.0.0.1}:${PENTAGI_LISTEN_PORT:-8443}:8443
|
|
depends_on:
|
|
pgvector:
|
|
condition: service_started
|
|
environment:
|
|
- DEBUG=${DEBUG:-false}
|
|
- DOCKER_GID=998
|
|
- CORS_ORIGINS=${CORS_ORIGINS:-}
|
|
- COOKIE_SIGNING_SALT=${COOKIE_SIGNING_SALT:-}
|
|
- INSTALLATION_ID=${INSTALLATION_ID:-}
|
|
- LICENSE_KEY=${LICENSE_KEY:-}
|
|
- ASK_USER=${ASK_USER:-false}
|
|
- OPEN_AI_KEY=${OPEN_AI_KEY:-}
|
|
- OPEN_AI_SERVER_URL=${OPEN_AI_SERVER_URL:-}
|
|
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}
|
|
- ANTHROPIC_SERVER_URL=${ANTHROPIC_SERVER_URL:-}
|
|
- GEMINI_API_KEY=${GEMINI_API_KEY:-}
|
|
- GEMINI_SERVER_URL=${GEMINI_SERVER_URL:-}
|
|
- BEDROCK_REGION=${BEDROCK_REGION:-}
|
|
- BEDROCK_ACCESS_KEY_ID=${BEDROCK_ACCESS_KEY_ID:-}
|
|
- BEDROCK_SECRET_ACCESS_KEY=${BEDROCK_SECRET_ACCESS_KEY:-}
|
|
- BEDROCK_SESSION_TOKEN=${BEDROCK_SESSION_TOKEN:-}
|
|
- BEDROCK_SERVER_URL=${BEDROCK_SERVER_URL:-}
|
|
- LLM_SERVER_URL=${LLM_SERVER_URL:-}
|
|
- LLM_SERVER_KEY=${LLM_SERVER_KEY:-}
|
|
- LLM_SERVER_MODEL=${LLM_SERVER_MODEL:-}
|
|
- LLM_SERVER_PROVIDER=${LLM_SERVER_PROVIDER:-}
|
|
- LLM_SERVER_CONFIG_PATH=${LLM_SERVER_CONFIG_PATH:-}
|
|
- LLM_SERVER_LEGACY_REASONING=${LLM_SERVER_LEGACY_REASONING:-}
|
|
- LLM_SERVER_PRESERVE_REASONING=${LLM_SERVER_PRESERVE_REASONING:-}
|
|
- OLLAMA_SERVER_URL=${OLLAMA_SERVER_URL:-}
|
|
- OLLAMA_SERVER_MODEL=${OLLAMA_SERVER_MODEL:-}
|
|
- OLLAMA_SERVER_CONFIG_PATH=${OLLAMA_SERVER_CONFIG_PATH:-}
|
|
- OLLAMA_SERVER_PULL_MODELS_TIMEOUT=${OLLAMA_SERVER_PULL_MODELS_TIMEOUT:-}
|
|
- OLLAMA_SERVER_PULL_MODELS_ENABLED=${OLLAMA_SERVER_PULL_MODELS_ENABLED:-}
|
|
- OLLAMA_SERVER_LOAD_MODELS_ENABLED=${OLLAMA_SERVER_LOAD_MODELS_ENABLED:-}
|
|
- EMBEDDING_URL=${EMBEDDING_URL:-}
|
|
- EMBEDDING_KEY=${EMBEDDING_KEY:-}
|
|
- EMBEDDING_MODEL=${EMBEDDING_MODEL:-}
|
|
- EMBEDDING_PROVIDER=${EMBEDDING_PROVIDER:-}
|
|
- EMBEDDING_BATCH_SIZE=${EMBEDDING_BATCH_SIZE:-}
|
|
- EMBEDDING_STRIP_NEW_LINES=${EMBEDDING_STRIP_NEW_LINES:-}
|
|
- SUMMARIZER_PRESERVE_LAST=${SUMMARIZER_PRESERVE_LAST:-}
|
|
- SUMMARIZER_USE_QA=${SUMMARIZER_USE_QA:-}
|
|
- SUMMARIZER_SUM_MSG_HUMAN_IN_QA=${SUMMARIZER_SUM_MSG_HUMAN_IN_QA:-}
|
|
- SUMMARIZER_LAST_SEC_BYTES=${SUMMARIZER_LAST_SEC_BYTES:-}
|
|
- SUMMARIZER_MAX_BP_BYTES=${SUMMARIZER_MAX_BP_BYTES:-}
|
|
- SUMMARIZER_MAX_QA_SECTIONS=${SUMMARIZER_MAX_QA_SECTIONS:-}
|
|
- SUMMARIZER_MAX_QA_BYTES=${SUMMARIZER_MAX_QA_BYTES:-}
|
|
- SUMMARIZER_KEEP_QA_SECTIONS=${SUMMARIZER_KEEP_QA_SECTIONS:-}
|
|
- ASSISTANT_USE_AGENTS=${ASSISTANT_USE_AGENTS:-}
|
|
- ASSISTANT_SUMMARIZER_PRESERVE_LAST=${ASSISTANT_SUMMARIZER_PRESERVE_LAST:-}
|
|
- ASSISTANT_SUMMARIZER_LAST_SEC_BYTES=${ASSISTANT_SUMMARIZER_LAST_SEC_BYTES:-}
|
|
- ASSISTANT_SUMMARIZER_MAX_BP_BYTES=${ASSISTANT_SUMMARIZER_MAX_BP_BYTES:-}
|
|
- ASSISTANT_SUMMARIZER_MAX_QA_SECTIONS=${ASSISTANT_SUMMARIZER_MAX_QA_SECTIONS:-}
|
|
- ASSISTANT_SUMMARIZER_MAX_QA_BYTES=${ASSISTANT_SUMMARIZER_MAX_QA_BYTES:-}
|
|
- ASSISTANT_SUMMARIZER_KEEP_QA_SECTIONS=${ASSISTANT_SUMMARIZER_KEEP_QA_SECTIONS:-}
|
|
- PROXY_URL=${PROXY_URL:-}
|
|
- EXTERNAL_SSL_CA_PATH=${EXTERNAL_SSL_CA_PATH:-}
|
|
- EXTERNAL_SSL_INSECURE=${EXTERNAL_SSL_INSECURE:-}
|
|
- SCRAPER_PUBLIC_URL=${SCRAPER_PUBLIC_URL:-}
|
|
- SCRAPER_PRIVATE_URL=${SCRAPER_PRIVATE_URL:-}
|
|
- GRAPHITI_ENABLED=${GRAPHITI_ENABLED:-}
|
|
- GRAPHITI_TIMEOUT=${GRAPHITI_TIMEOUT:-}
|
|
- GRAPHITI_URL=${GRAPHITI_URL:-}
|
|
- PUBLIC_URL=${PUBLIC_URL:-}
|
|
- STATIC_DIR=${STATIC_DIR:-}
|
|
- STATIC_URL=${STATIC_URL:-}
|
|
- SERVER_PORT=${SERVER_PORT:-8443}
|
|
- SERVER_HOST=${SERVER_HOST:-0.0.0.0}
|
|
- SERVER_SSL_CRT=${SERVER_SSL_CRT:-}
|
|
- SERVER_SSL_KEY=${SERVER_SSL_KEY:-}
|
|
- SERVER_USE_SSL=${SERVER_USE_SSL:-true}
|
|
- OAUTH_GOOGLE_CLIENT_ID=${OAUTH_GOOGLE_CLIENT_ID:-}
|
|
- OAUTH_GOOGLE_CLIENT_SECRET=${OAUTH_GOOGLE_CLIENT_SECRET:-}
|
|
- OAUTH_GITHUB_CLIENT_ID=${OAUTH_GITHUB_CLIENT_ID:-}
|
|
- OAUTH_GITHUB_CLIENT_SECRET=${OAUTH_GITHUB_CLIENT_SECRET:-}
|
|
- DATABASE_URL=postgres://${PENTAGI_POSTGRES_USER:-postgres}:${PENTAGI_POSTGRES_PASSWORD:-postgres}@pgvector:5432/${PENTAGI_POSTGRES_DB:-pentagidb}?sslmode=disable
|
|
- DUCKDUCKGO_ENABLED=${DUCKDUCKGO_ENABLED:-}
|
|
- SEARXNG_URL=${SEARXNG_URL:-}
|
|
- SEARXNG_CATEGORIES=${SEARXNG_CATEGORIES:-}
|
|
- SEARXNG_LANGUAGE=${SEARXNG_LANGUAGE:-}
|
|
- SEARXNG_SAFESEARCH=${SEARXNG_SAFESEARCH:-}
|
|
- SEARXNG_TIME_RANGE=${SEARXNG_TIME_RANGE:-}
|
|
- GOOGLE_API_KEY=${GOOGLE_API_KEY:-}
|
|
- GOOGLE_CX_KEY=${GOOGLE_CX_KEY:-}
|
|
- GOOGLE_LR_KEY=${GOOGLE_LR_KEY:-}
|
|
- TRAVERSAAL_API_KEY=${TRAVERSAAL_API_KEY:-}
|
|
- TAVILY_API_KEY=${TAVILY_API_KEY:-}
|
|
- PERPLEXITY_API_KEY=${PERPLEXITY_API_KEY:-}
|
|
- PERPLEXITY_MODEL=${PERPLEXITY_MODEL:-sonar}
|
|
- PERPLEXITY_CONTEXT_SIZE=${PERPLEXITY_CONTEXT_SIZE:-low}
|
|
- LANGFUSE_BASE_URL=${LANGFUSE_BASE_URL:-}
|
|
- LANGFUSE_PROJECT_ID=${LANGFUSE_PROJECT_ID:-}
|
|
- LANGFUSE_PUBLIC_KEY=${LANGFUSE_PUBLIC_KEY:-}
|
|
- LANGFUSE_SECRET_KEY=${LANGFUSE_SECRET_KEY:-}
|
|
- OTEL_HOST=${OTEL_HOST:-}
|
|
- DOCKER_HOST=${DOCKER_HOST:-unix:///var/run/docker.sock}
|
|
- DOCKER_TLS_VERIFY=${DOCKER_TLS_VERIFY:-}
|
|
- DOCKER_CERT_PATH=${DOCKER_CERT_PATH:-}
|
|
- DOCKER_INSIDE=${DOCKER_INSIDE:-false}
|
|
- DOCKER_NET_ADMIN=${DOCKER_NET_ADMIN:-false}
|
|
- DOCKER_SOCKET=${DOCKER_SOCKET:-}
|
|
- DOCKER_NETWORK=${DOCKER_NETWORK:-}
|
|
- DOCKER_PUBLIC_IP=${DOCKER_PUBLIC_IP:-}
|
|
- DOCKER_WORK_DIR=${DOCKER_WORK_DIR:-}
|
|
- DOCKER_DEFAULT_IMAGE=${DOCKER_DEFAULT_IMAGE:-}
|
|
- DOCKER_DEFAULT_IMAGE_FOR_PENTEST=${DOCKER_DEFAULT_IMAGE_FOR_PENTEST:-}
|
|
logging:
|
|
options:
|
|
max-size: 50m
|
|
max-file: "7"
|
|
volumes:
|
|
- ${PENTAGI_DATA_DIR:-pentagi-data}:/opt/pentagi/data
|
|
- ${PENTAGI_SSL_DIR:-pentagi-ssl}:/opt/pentagi/ssl
|
|
- ${PENTAGI_DOCKER_SOCKET:-/var/run/docker.sock}:/var/run/docker.sock
|
|
- ${PENTAGI_LLM_SERVER_CONFIG_PATH:-./example.custom.provider.yml}:/opt/pentagi/conf/custom.provider.yml
|
|
- ${PENTAGI_OLLAMA_SERVER_CONFIG_PATH:-./example.ollama.provider.yml}:/opt/pentagi/conf/ollama.provider.yml
|
|
- ${PENTAGI_DOCKER_CERT_PATH:-./docker-ssl}:/opt/pentagi/docker/ssl
|
|
user: root:root # while using docker.sock
|
|
networks:
|
|
- pentagi-network
|
|
- observability-network
|
|
- langfuse-network
|
|
|
|
pgvector:
|
|
image: vxcontrol/pgvector:latest
|
|
restart: unless-stopped
|
|
container_name: pgvector
|
|
hostname: pgvector
|
|
expose:
|
|
- 5432/tcp
|
|
ports:
|
|
- ${PGVECTOR_LISTEN_IP:-127.0.0.1}:${PGVECTOR_LISTEN_PORT:-5432}:5432
|
|
environment:
|
|
POSTGRES_USER: ${PENTAGI_POSTGRES_USER:-postgres}
|
|
POSTGRES_PASSWORD: ${PENTAGI_POSTGRES_PASSWORD:-postgres}
|
|
POSTGRES_DB: ${PENTAGI_POSTGRES_DB:-pentagidb}
|
|
logging:
|
|
options:
|
|
max-size: 50m
|
|
max-file: "7"
|
|
volumes:
|
|
- pentagi-postgres-data:/var/lib/postgresql/data
|
|
networks:
|
|
- pentagi-network
|
|
|
|
pgexporter:
|
|
image: quay.io/prometheuscommunity/postgres-exporter:v0.16.0
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- pgvector
|
|
container_name: pgexporter
|
|
hostname: pgexporter
|
|
expose:
|
|
- 9187/tcp
|
|
ports:
|
|
- ${POSTGRES_EXPORTER_LISTEN_IP:-127.0.0.1}:${POSTGRES_EXPORTER_LISTEN_PORT:-9187}:9187
|
|
environment:
|
|
- DATA_SOURCE_NAME=postgresql://${PENTAGI_POSTGRES_USER:-postgres}:${PENTAGI_POSTGRES_PASSWORD:-postgres}@pgvector:5432/${PENTAGI_POSTGRES_DB:-pentagidb}?sslmode=disable
|
|
logging:
|
|
options:
|
|
max-size: 50m
|
|
max-file: "7"
|
|
networks:
|
|
- pentagi-network
|
|
|
|
scraper:
|
|
image: vxcontrol/scraper:latest
|
|
restart: unless-stopped
|
|
container_name: scraper
|
|
hostname: scraper
|
|
expose:
|
|
- 443/tcp
|
|
ports:
|
|
- ${SCRAPER_LISTEN_IP:-127.0.0.1}:${SCRAPER_LISTEN_PORT:-9443}:443
|
|
environment:
|
|
- MAX_CONCURRENT_SESSIONS=${LOCAL_SCRAPER_MAX_CONCURRENT_SESSIONS:-10}
|
|
- USERNAME=${LOCAL_SCRAPER_USERNAME:-someuser}
|
|
- PASSWORD=${LOCAL_SCRAPER_PASSWORD:-somepass}
|
|
logging:
|
|
options:
|
|
max-size: 50m
|
|
max-file: "7"
|
|
volumes:
|
|
- scraper-ssl:/usr/src/app/ssl
|
|
networks:
|
|
- pentagi-network
|
|
shm_size: 2g
|