Copy from official git and change the following part .docker/etc/ Put it in default / solr.in.sh
Change the directory according to your environment.
#ZK_HOST
↓
ZK_HOST="zookeeper1:2181/"
docker-compose.yml
version: '3.8'
services:
  solr_node1:
    image: solr:8.6
    container_name: solr_node1
    volumes:
      - ./.docker/etc/default/solr.in.sh:/etc/default/solr.in.sh
    ports:
      - "8981:8983"
    depends_on:
      - zookeeper1
  solr_node2:
    image: solr:8.6
    container_name: solr_node2
    volumes:
      - ./.docker/etc/default/solr.in.sh:/etc/default/solr.in.sh
    ports:
      - "8982:8983"
    depends_on:
      - zookeeper1
  zookeeper1:
    image: zookeeper:3.6
    container_name: zookeeper1
    environment:
      ZOO_MY_ID: 1
      ZOO_SERVERS: server.1=zookeeper1:2888:3888;2181
      ZOO_4LW_COMMANDS_WHITELIST: mntr,conf,ruok
If infoStream is enabled, detailed log related to index generation will be output.
solrconfig.xml
  <indexConfig>
     <infoStream>true</infoStream>
  </indexConfig>
It will be enabled if you write the above setting in solrconfig.xml.
/var/solr/log4j2.xml
<AsyncLogger name="org.apache.solr.update.LoggingInfoStream" level="off"/>
↓
<AsyncLogger name="org.apache.solr.update.LoggingInfoStream" level="info"/>
If the level of LoggingInfoStream is off, it will not be output, so change it to info. Now it will be output to solr.log.
docker-compose up -d
http://localhost:8982/solr/#/ The screen is displayed when you access.
Recommended Posts