replacing opensearch with solr
This commit is contained in:
@@ -34,18 +34,10 @@ services:
|
||||
- SPRING_DATASOURCE_USERNAME=storycove
|
||||
- SPRING_DATASOURCE_PASSWORD=${DB_PASSWORD}
|
||||
- JWT_SECRET=${JWT_SECRET}
|
||||
- OPENSEARCH_HOST=opensearch
|
||||
- OPENSEARCH_PORT=9200
|
||||
- OPENSEARCH_SCHEME=http
|
||||
- OPENSEARCH_USERNAME=
|
||||
- OPENSEARCH_PASSWORD=
|
||||
- OPENSEARCH_SSL_VERIFICATION=false
|
||||
- OPENSEARCH_TRUST_ALL_CERTS=true
|
||||
- OPENSEARCH_CONNECTION_TIMEOUT=60000
|
||||
- OPENSEARCH_SOCKET_TIMEOUT=120000
|
||||
- OPENSEARCH_MAX_RETRIES=5
|
||||
- OPENSEARCH_RETRY_ON_FAILURE=true
|
||||
- SEARCH_ENGINE=${SEARCH_ENGINE:-opensearch}
|
||||
- SOLR_HOST=solr
|
||||
- SOLR_PORT=8983
|
||||
- SOLR_SCHEME=http
|
||||
- SEARCH_ENGINE=${SEARCH_ENGINE:-solr}
|
||||
- IMAGE_STORAGE_PATH=/app/images
|
||||
- APP_PASSWORD=${APP_PASSWORD}
|
||||
- STORYCOVE_CORS_ALLOWED_ORIGINS=${STORYCOVE_CORS_ALLOWED_ORIGINS:-http://localhost:3000,http://localhost:6925}
|
||||
@@ -55,7 +47,7 @@ services:
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_started
|
||||
opensearch:
|
||||
solr:
|
||||
condition: service_started
|
||||
networks:
|
||||
- storycove-network
|
||||
@@ -75,22 +67,32 @@ services:
|
||||
- storycove-network
|
||||
|
||||
|
||||
opensearch:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: opensearch.Dockerfile
|
||||
# No port mapping - only accessible within the Docker network
|
||||
solr:
|
||||
image: solr:9.9.0
|
||||
ports:
|
||||
- "8983:8983" # Expose Solr Admin UI for development
|
||||
environment:
|
||||
- cluster.name=storycove-opensearch
|
||||
- node.name=opensearch-node
|
||||
- discovery.type=single-node
|
||||
- bootstrap.memory_lock=false
|
||||
- "OPENSEARCH_JAVA_OPTS=-Xms256m -Xmx512m --add-opens=java.base/java.lang=ALL-UNNAMED -Dlucene.useVectorAPI=false -Dorg.apache.lucene.store.MMapDirectory.enableMemorySegments=false"
|
||||
- "DISABLE_INSTALL_DEMO_CONFIG=true"
|
||||
- "DISABLE_SECURITY_PLUGIN=true"
|
||||
- "DISABLE_PERFORMANCE_ANALYZER_AGENT_CLI=true"
|
||||
- "ES_TMPDIR=/tmp"
|
||||
- "_JAVA_OPTIONS=-Djdk.net.useExclusiveBind=false"
|
||||
- SOLR_HEAP=512m
|
||||
- SOLR_JAVA_MEM=-Xms256m -Xmx512m
|
||||
volumes:
|
||||
- solr_data:/var/solr
|
||||
- ./solr/stories:/opt/solr-9.9.0/server/solr/configsets/storycove_stories
|
||||
- ./solr/authors:/opt/solr-9.9.0/server/solr/configsets/storycove_authors
|
||||
command: >
|
||||
sh -c "
|
||||
echo 'Starting Solr...' &&
|
||||
solr start -f &
|
||||
SOLR_PID=$$! &&
|
||||
echo 'Waiting for Solr to be ready...' &&
|
||||
sleep 15 &&
|
||||
echo 'Creating cores...' &&
|
||||
(solr create_core -c storycove_stories -d storycove_stories || echo 'Stories core already exists') &&
|
||||
echo 'Stories core ready' &&
|
||||
(solr create_core -c storycove_authors -d storycove_authors || echo 'Authors core already exists') &&
|
||||
echo 'Authors core ready' &&
|
||||
echo 'Both cores are available' &&
|
||||
wait $$SOLR_PID
|
||||
"
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
@@ -99,39 +101,19 @@ services:
|
||||
memory: 512M
|
||||
stop_grace_period: 30s
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "curl -f http://localhost:9200/_cluster/health || exit 1"]
|
||||
test: ["CMD-SHELL", "curl -f http://localhost:8983/solr/admin/ping || exit 1"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 5
|
||||
start_period: 120s
|
||||
ulimits:
|
||||
memlock:
|
||||
soft: -1
|
||||
hard: -1
|
||||
nofile:
|
||||
soft: 65536
|
||||
hard: 65536
|
||||
volumes:
|
||||
- opensearch_data:/usr/share/opensearch/data
|
||||
start_period: 60s
|
||||
networks:
|
||||
- storycove-network
|
||||
restart: unless-stopped
|
||||
|
||||
opensearch-dashboards:
|
||||
image: opensearchproject/opensearch-dashboards:3.2.0
|
||||
ports:
|
||||
- "5601:5601" # Expose OpenSearch Dashboard
|
||||
environment:
|
||||
- OPENSEARCH_HOSTS=http://opensearch:9200
|
||||
- "DISABLE_SECURITY_DASHBOARDS_PLUGIN=true"
|
||||
depends_on:
|
||||
- opensearch
|
||||
networks:
|
||||
- storycove-network
|
||||
|
||||
volumes:
|
||||
postgres_data:
|
||||
opensearch_data:
|
||||
solr_data:
|
||||
images_data:
|
||||
library_config:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user