123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- networks:
- r2r-network:
- external: true
- #driver: bridge
- attachable: true
- labels:
- - "com.docker.compose.recreate=always"
- volumes:
- postgres_data:
- name: ${VOLUME_POSTGRES_DATA:-postgres_data}
- services:
- postgres:
- image: pgvector/pgvector:pg17
- profiles: [postgres]
- environment:
- - POSTGRES_USER=${R2R_POSTGRES_USER:-${POSTGRES_USER:-postgres}} # Eventually get rid of POSTGRES_USER, but for now keep it for backwards compatibility
- - POSTGRES_PASSWORD=${R2R_POSTGRES_PASSWORD:-${POSTGRES_PASSWORD:-cocorobo-123}} # Eventually get rid of POSTGRES_PASSWORD, but for now keep it for backwards compatibility
- - POSTGRES_HOST=${R2R_POSTGRES_HOST:-${POSTGRES_HOST:-postgres}} # Eventually get rid of POSTGRES_HOST, but for now keep it for backwards compatibility
- - POSTGRES_PORT=${R2R_POSTGRES_PORT:-${POSTGRES_PORT:-5432}} # Eventually get rid of POSTGRES_PORT, but for now keep it for backwards compatibility
- - POSTGRES_MAX_CONNECTIONS=${R2R_POSTGRES_MAX_CONNECTIONS:-${POSTGRES_MAX_CONNECTIONS:-102400}} # Eventually get rid of POSTGRES_MAX_CONNECTIONS, but for now keep it for backwards compatibility
- - PGPORT=${R2R_POSTGRES_PORT:-5432}
- volumes:
- - ./postgres_data:/var/lib/postgresql/data
- networks:
- - r2r-network
- ports:
- - "${R2R_POSTGRES_PORT:-5432}:${R2R_POSTGRES_PORT:-5432}"
- healthcheck:
- test: ["CMD-SHELL", "pg_isready -U ${R2R_POSTGRES_USER:-postgres}"]
- interval: 10s
- timeout: 5s
- retries: 5
- restart: on-failure
- command: >
- postgres
- -c max_connections=${R2R_POSTGRES_MAX_CONNECTIONS:-1024}
- r2r:
- image: ${R2R_IMAGE:-ragtoriches/prod:latest}
- build:
- context: .
- args:
- PORT: ${R2R_PORT:-7272}
- R2R_PORT: ${R2R_PORT:-7272}
- HOST: ${R2R_HOST:-0.0.0.0}
- R2R_HOST: ${R2R_HOST:-0.0.0.0}
- ports:
- - "${R2R_PORT:-7272}:${R2R_PORT:-7272}"
- environment:
- - PYTHONUNBUFFERED=1
- - R2R_PORT=${R2R_PORT:-7272}
- - R2R_HOST=${R2R_HOST:-0.0.0.0}
- # R2R
- - R2R_CONFIG_NAME=${R2R_CONFIG_NAME:-}
- - R2R_CONFIG_PATH=${R2R_CONFIG_PATH:-}
- - R2R_PROJECT_NAME=${R2R_PROJECT_NAME:-r2r_default}
- # Postgres
- - R2R_POSTGRES_USER=${R2R_POSTGRES_USER:-postgres}
- - R2R_POSTGRES_PASSWORD=${R2R_POSTGRES_PASSWORD:-cocorobo-123}
- - R2R_POSTGRES_HOST=${R2R_POSTGRES_HOST:-postgres}
- - R2R_POSTGRES_PORT=${R2R_POSTGRES_PORT:-5432}
- - R2R_POSTGRES_DBNAME=${R2R_POSTGRES_DBNAME:-cocorobo-file}
- - R2R_POSTGRES_MAX_CONNECTIONS=${R2R_POSTGRES_MAX_CONNECTIONS:-102400}
- - R2R_POSTGRES_PROJECT_NAME=${R2R_POSTGRES_PROJECT_NAME:-cocorobo-knowledge}
- - R2R_POSTGRES_STATEMENT_CACHE_SIZE=${R2R_POSTGRES_STATEMENT_CACHE_SIZE:-100}
- # OpenAI
- - OPENAI_API_KEY=${OPENAI_API_KEY:-sk-vTqeBKDC2j6osbGt89A2202dAd1c4fE8B1D294388b569e54}
- - OPENAI_API_BASE=${OPENAI_API_BASE:-https://onehub.cocorobo.cn/v1}
- # Anthropic
- - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}
- # Azure
- - AZURE_API_KEY=${AZURE_API_KEY:-}
- - AZURE_API_BASE=${AZURE_API_BASE:-}
- - AZURE_API_VERSION=${AZURE_API_VERSION:-}
- # Google Vertex AI
- - GOOGLE_APPLICATION_CREDENTIALS=${GOOGLE_APPLICATION_CREDENTIALS:-}
- - VERTEX_PROJECT=${VERTEX_PROJECT:-}
- - VERTEX_LOCATION=${VERTEX_LOCATION:-}
- # AWS Bedrock
- - AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID:-AKIATLPEDU37QV5CHLMH}
- - AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY:-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}
- - AWS_REGION_NAME=${AWS_REGION_NAME:-cn-northwest-1}
- # Groq
- - GROQ_API_KEY=${GROQ_API_KEY:-}
- # Cohere
- - COHERE_API_KEY=${COHERE_API_KEY:-}
- # Anyscale
- - ANYSCALE_API_KEY=${ANYSCALE_API_KEY:-ZYLf8VLMoW8QRJ86bXEec9rX}
- # Ollama
- - OLLAMA_API_BASE=${OLLAMA_API_BASE:-http://host.docker.internal:11434}
- networks:
- - r2r-network
- healthcheck:
- test: ["CMD", "curl", "-f", "http://localhost:${R2R_PORT:-7272}/v3/health"]
- interval: 6s
- timeout: 5s
- retries: 5
- restart: on-failure
- volumes:
- - ${R2R_CONFIG_PATH:-/}:${R2R_CONFIG_PATH:-/app/config}
- extra_hosts:
- - host.docker.internal:host-gateway
- r2r-dashboard:
- image: emrgntcmplxty/r2r-dashboard:latest
- environment:
- - NEXT_PUBLIC_R2R_DEPLOYMENT_URL=${R2R_DEPLOYMENT_URL:-https://r2rserver.cocorobo.cn}
- networks:
- - r2r-network
- ports:
- - "${R2R_DASHBOARD_PORT:-7273}:3000"
|