This commit is contained in:
Stefan Hardegger
2025-09-22 12:28:31 +02:00
parent f61be90d5c
commit b68fde71c0

View File

@@ -7,30 +7,25 @@ USER root
COPY ./solr/stories /opt/solr-9.9.0/server/solr/configsets/storycove_stories
COPY ./solr/authors /opt/solr-9.9.0/server/solr/configsets/storycove_authors
# Create initialization script
COPY <<EOF /opt/solr-init.sh
# Create initialization script using the precreate-core pattern
COPY <<EOF /docker-entrypoint-initdb.d/init-cores.sh
#!/bin/bash
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
echo "StoryCove: Initializing cores..."
# Use solr's built-in precreate-core functionality
precreate-core storycove_stories /opt/solr-9.9.0/server/solr/configsets/storycove_stories
precreate-core storycove_authors /opt/solr-9.9.0/server/solr/configsets/storycove_authors
echo "StoryCove: Core initialization complete!"
EOF
# Ensure proper permissions
# Ensure proper permissions and make script executable
RUN chown -R solr:solr /opt/solr-9.9.0/server/solr/configsets/ && \
chmod +x /opt/solr-init.sh && \
chown solr:solr /opt/solr-init.sh
chmod +x /docker-entrypoint-initdb.d/init-cores.sh && \
chown solr:solr /docker-entrypoint-initdb.d/init-cores.sh
# Switch back to solr user
USER solr
# Set the entrypoint to our initialization script
ENTRYPOINT ["/opt/solr-init.sh"]
# Use the default Solr entrypoint
CMD ["solr-foreground"]