我想在solr docker镜像内执行命令以导出指标。

https://lucene.apache.org/solr/guide/7_3/monitoring-solr-with-prometheus-and-grafana.html

我尝试了这个:

    command:
      - solr-demo
      - sh ./bin/solr-exporter -p 9854 -b http://localhost:8983/solr

这是完整的docker-compose
version: '3.7'
volumes:
    solr_data: {}
services:
  solr:
    image: solr:8
    ports:
     - "8983:8983"
    volumes:
      - solr_data:/var/solr
    command:
      - solr-demo

我没有任何错误,但是启动导出器的命令未执行。

最佳答案

Prometheus解决此问题的方法是将solr-exporter作为单独的docker容器或小汽车运行,并刮除solr服务器。

version: '3.7'
volumes:
    solr_data: {}
services:
  solr:
    image: solr:8
    ports:
     - "8983:8983"
    volumes:
      - solr_data:/var/solr
    command:
      - solr-demo
  solr-exporter:
    image: solr:8
    ports:
     - "9854:9854"
    entrypoint:
      - "/opt/solr-8.2.0/contrib/prometheus-exporter/bin/solr-exporter"
      - "-p"
      - "9854"
      - "-b"
      - "http://solr:8983/solr"
      - "-f"
      - "/opt/solr-8.2.0/contrib/prometheus-exporter/conf/solr-exporter-config.xml"
      - "-n"
      - "8"

"http://solr:8983/solr"用作导出器的目标可以使其刮擦名为solr的容器。

上面的exporter命令行是从docs here逐字获取的,您可能需要根据需要进行调整。

关于docker - 在Docker镜像中执行命令以启动solr导出器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58169520/

10-16 18:34