41 lines
1.1 KiB
Docker
41 lines
1.1 KiB
Docker
FROM eclipse-temurin:17-jdk
|
|
|
|
# Environment variables as per the startup script
|
|
ENV SOLR_HOME=/opt/infinitysolr
|
|
ENV JAVA_HOME=/opt/java/openjdk
|
|
ENV JRE_HOME=/opt/java/openjdk/jre
|
|
ENV SOLR_JAVA_HOME=/opt/java/openjdk
|
|
ENV SOLR_JAVA_MEM="-Xms1024m -Xmx4096m -Xss1664k"
|
|
ENV VERSION="1.0.0"
|
|
|
|
# Create necessary directory for Solr
|
|
RUN mkdir -p /opt/infinitysolr
|
|
|
|
# Install lsof and procps (which includes ps)
|
|
RUN apt-get update && \
|
|
apt-get install -y lsof procps && \
|
|
apt-get clean
|
|
|
|
# Copy your customized Solr executables and scripts into the container
|
|
COPY ./solr/ $SOLR_HOME
|
|
|
|
# Set executable permissions for the Solr scripts
|
|
RUN chmod +x $SOLR_HOME/infinitysolr/infinitysolr.sh
|
|
RUN chmod +x $SOLR_HOME/infinitysolr/version.sh
|
|
RUN chmod +x $SOLR_HOME/bin/solr
|
|
|
|
# Set Solr home ownership if needed
|
|
RUN chown -R root:root $SOLR_HOME
|
|
|
|
# Declare the "server" folder as a volume for persistent data storage
|
|
VOLUME ["$SOLR_HOME/server"]
|
|
|
|
# Expose Solr's default port
|
|
EXPOSE 8983
|
|
|
|
# Set the default entrypoint to manage the service
|
|
ENTRYPOINT ["/opt/infinitysolr/infinitysolr/infinitysolr.sh"]
|
|
|
|
# To keep the container running, we can start the Solr service
|
|
CMD ["start"]
|