compose.yaml.bbak 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. networks:
  2. r2r-network:
  3. driver: bridge
  4. attachable: true
  5. labels:
  6. - "com.docker.compose.recreate=always"
  7. volumes:
  8. postgres_data:
  9. name: ${VOLUME_POSTGRES_DATA:-postgres_data}
  10. services:
  11. postgres:
  12. image: pgvector/pgvector:pg16
  13. profiles: [postgres]
  14. environment:
  15. - POSTGRES_USER=${R2R_POSTGRES_USER:-${POSTGRES_USER:-postgres}} # Eventually get rid of POSTGRES_USER, but for now keep it for backwards compatibility
  16. - POSTGRES_PASSWORD=${R2R_POSTGRES_PASSWORD:-${POSTGRES_PASSWORD:-postgres}} # Eventually get rid of POSTGRES_PASSWORD, but for now keep it for backwards compatibility
  17. - POSTGRES_HOST=${R2R_POSTGRES_HOST:-${POSTGRES_HOST:-postgres}} # Eventually get rid of POSTGRES_HOST, but for now keep it for backwards compatibility
  18. - POSTGRES_PORT=${R2R_POSTGRES_PORT:-${POSTGRES_PORT:-5432}} # Eventually get rid of POSTGRES_PORT, but for now keep it for backwards compatibility
  19. - POSTGRES_MAX_CONNECTIONS=${R2R_POSTGRES_MAX_CONNECTIONS:-${POSTGRES_MAX_CONNECTIONS:-1024}} # Eventually get rid of POSTGRES_MAX_CONNECTIONS, but for now keep it for backwards compatibility
  20. - PGPORT=${R2R_POSTGRES_PORT:-5432}
  21. volumes:
  22. - postgres_data:/var/lib/postgresql/data
  23. networks:
  24. - r2r-network
  25. ports:
  26. - "${R2R_POSTGRES_PORT:-5432}:${R2R_POSTGRES_PORT:-5432}"
  27. healthcheck:
  28. test: ["CMD-SHELL", "pg_isready -U ${R2R_POSTGRES_USER:-postgres}"]
  29. interval: 10s
  30. timeout: 5s
  31. retries: 5
  32. restart: on-failure
  33. command: >
  34. postgres
  35. -c max_connections=${R2R_POSTGRES_MAX_CONNECTIONS:-1024}
  36. r2r:
  37. image: ${R2R_IMAGE:-ragtoriches/prod:latest}
  38. build:
  39. context: .
  40. args:
  41. PORT: ${R2R_PORT:-7272}
  42. R2R_PORT: ${R2R_PORT:-7272}
  43. HOST: ${R2R_HOST:-0.0.0.0}
  44. R2R_HOST: ${R2R_HOST:-0.0.0.0}
  45. ports:
  46. - "${R2R_PORT:-7272}:${R2R_PORT:-7272}"
  47. environment:
  48. - PYTHONUNBUFFERED=1
  49. - R2R_PORT=${R2R_PORT:-7272}
  50. - R2R_HOST=${R2R_HOST:-0.0.0.0}
  51. # R2R
  52. - R2R_CONFIG_NAME=${R2R_CONFIG_NAME:-}
  53. - R2R_CONFIG_PATH=${R2R_CONFIG_PATH:-}
  54. - R2R_PROJECT_NAME=${R2R_PROJECT_NAME:-r2r_default}
  55. # Postgres
  56. - R2R_POSTGRES_USER=${R2R_POSTGRES_USER:-postgres}
  57. - R2R_POSTGRES_PASSWORD=${R2R_POSTGRES_PASSWORD:-postgres}
  58. - R2R_POSTGRES_HOST=${R2R_POSTGRES_HOST:-postgres}
  59. - R2R_POSTGRES_PORT=${R2R_POSTGRES_PORT:-5432}
  60. - R2R_POSTGRES_DBNAME=${R2R_POSTGRES_DBNAME:-postgres}
  61. - R2R_POSTGRES_PROJECT_NAME=${R2R_POSTGRES_PROJECT_NAME:-r2r_default}
  62. - R2R_POSTGRES_MAX_CONNECTIONS=${R2R_POSTGRES_MAX_CONNECTIONS:-1024}
  63. - R2R_POSTGRES_STATEMENT_CACHE_SIZE=${R2R_POSTGRES_STATEMENT_CACHE_SIZE:-100}
  64. # OpenAI
  65. - OPENAI_API_KEY=${OPENAI_API_KEY:-}
  66. - OPENAI_API_BASE=${OPENAI_API_BASE:-}
  67. # Anthropic
  68. - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}
  69. # Azure
  70. - AZURE_API_KEY=${AZURE_API_KEY:-}
  71. - AZURE_API_BASE=${AZURE_API_BASE:-}
  72. - AZURE_API_VERSION=${AZURE_API_VERSION:-}
  73. # Google Vertex AI
  74. - GOOGLE_APPLICATION_CREDENTIALS=${GOOGLE_APPLICATION_CREDENTIALS:-}
  75. - VERTEX_PROJECT=${VERTEX_PROJECT:-}
  76. - VERTEX_LOCATION=${VERTEX_LOCATION:-}
  77. # AWS Bedrock
  78. - AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID:-}
  79. - AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY:-}
  80. - AWS_REGION_NAME=${AWS_REGION_NAME:-}
  81. # Groq
  82. - GROQ_API_KEY=${GROQ_API_KEY:-}
  83. # Cohere
  84. - COHERE_API_KEY=${COHERE_API_KEY:-}
  85. # Anyscale
  86. - ANYSCALE_API_KEY=${ANYSCALE_API_KEY:-}
  87. # Ollama
  88. - OLLAMA_API_BASE=${OLLAMA_API_BASE:-http://host.docker.internal:11434}
  89. networks:
  90. - r2r-network
  91. healthcheck:
  92. test: ["CMD", "curl", "-f", "http://localhost:${R2R_PORT:-7272}/v3/health"]
  93. interval: 6s
  94. timeout: 5s
  95. retries: 5
  96. restart: on-failure
  97. volumes:
  98. - ${R2R_CONFIG_PATH:-/}:${R2R_CONFIG_PATH:-/app/config}
  99. extra_hosts:
  100. - host.docker.internal:host-gateway
  101. r2r-dashboard:
  102. image: emrgntcmplxty/r2r-dashboard:latest
  103. environment:
  104. - NEXT_PUBLIC_R2R_DEPLOYMENT_URL=${R2R_DEPLOYMENT_URL:-http://localhost:7272}
  105. networks:
  106. - r2r-network
  107. ports:
  108. - "${R2R_DASHBOARD_PORT:-7273}:3000"