docker-compose.yml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. services:
  2. es:
  3. image: elasticsearch:9.2.1
  4. container_name: aurak-es
  5. environment:
  6. - discovery.type=single-node
  7. - xpack.security.enabled=false
  8. - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
  9. ports:
  10. - "9200:9200"
  11. volumes:
  12. - es-data:/usr/share/elasticsearch/data
  13. networks:
  14. - aurak-network
  15. # restart: unless-stopped
  16. tika:
  17. image: apache/tika:latest
  18. container_name: aurak-tika
  19. ports:
  20. - "9998:9998"
  21. networks:
  22. - aurak-network
  23. restart: unless-stopped
  24. libreoffice:
  25. image: aurak-libreoffice:latest
  26. build:
  27. context: ./libreoffice-server
  28. dockerfile: Dockerfile
  29. container_name: aurak-libreoffice
  30. ports:
  31. - "8100:8100"
  32. volumes:
  33. - ./uploads:/app/uploads
  34. - ./temp:/temp
  35. networks:
  36. - aurak-network
  37. restart: unless-stopped
  38. # ollama:
  39. # image: ollama/ollama:latest
  40. # container_name: aurak-ollama
  41. # ports:
  42. # - "11434:11434"
  43. # environment:
  44. # - OLLAMA_CPU_ONLY=1
  45. # volumes:
  46. # - ollama-data:/root/.ollama
  47. # networks:
  48. # - aurak-network
  49. # restart: unless-stopped
  50. # entrypoint: ["/bin/sh", "-c"]
  51. # command: >
  52. # "ollama serve &
  53. # sleep 10 &&
  54. # ollama pull qwen2.5:3b &&
  55. # ollama pull nomic-embed-text:latest &&
  56. # ollama pull llava-phi3:3.8b &&
  57. # echo 'All models pulled successfully!' &&
  58. # wait"
  59. server:
  60. build:
  61. context: ./server
  62. dockerfile: Dockerfile
  63. container_name: aurak-server
  64. environment:
  65. - NODE_ENV=production
  66. - NODE_OPTIONS=--max-old-space-size=8192
  67. - PORT=3001
  68. - DATABASE_PATH=/app/data/metadata.db
  69. - ELASTICSEARCH_HOST=http://es:9200
  70. - TIKA_HOST=http://tika:9998
  71. - LIBREOFFICE_URL=http://libreoffice:8100
  72. - JWT_SECRET=13405a7d-742a-41f5-8b34-012735acffea
  73. - UPLOAD_FILE_PATH=/app/uploads
  74. - DEFAULT_VECTOR_DIMENSIONS=2048
  75. - TEMP_DIR=/app/temp
  76. - CHUNK_BATCH_SIZE=50
  77. volumes:
  78. - ./data:/app/data
  79. - ./uploads:/app/uploads
  80. - ./temp:/app/temp
  81. depends_on:
  82. - es
  83. - tika
  84. - libreoffice
  85. # restart: unless-stopped
  86. networks:
  87. - aurak-network
  88. web:
  89. build:
  90. context: .
  91. dockerfile: ./web/Dockerfile
  92. args:
  93. - VITE_API_BASE_URL=/api
  94. container_name: aurak-web
  95. depends_on:
  96. - server
  97. ports:
  98. - "80:80"
  99. - "443:443"
  100. volumes:
  101. - ./nginx/conf.d:/etc/nginx/conf.d
  102. networks:
  103. - aurak-network
  104. networks:
  105. aurak-network:
  106. driver: bridge
  107. volumes:
  108. es-data:
  109. driver: local
  110. ollama-data:
  111. driver: local
  112. aurak-data:
  113. driver: local