github.com/grafana/pyroscope@v1.18.0/tools/grafana-phlare (about) 1 #!/usr/bin/env bash 2 3 DOCKER_ARGS="--net=host" 4 5 if [[ $OSTYPE == 'darwin'* ]]; then 6 PHLARE_URL=${PHLARE_URL:-http://docker.for.mac.localhost:4040} 7 DOCKER_ARGS="" 8 else 9 PHLARE_URL=${PHLARE_URL:-http://localhost:4040} 10 fi 11 12 PYRO_URL=$PHLARE_URL/pyroscope 13 PROMETHEUS_URL=$PHLARE_URL/prometheus 14 15 datasource_provisioning="$(mktemp "${TMPDIR:-/tmp}/phlare-provisioning-XXXXXX")" 16 chmod 0644 "${datasource_provisioning}" 17 trap 'rm -f "${datasource_provisioning}"' EXIT 18 cat > "${datasource_provisioning}" <<EOF 19 apiVersion: 1 20 datasources: 21 - name: Prometheus 22 type: prometheus 23 url: ${PROMETHEUS_URL} 24 - name: Pyroscope 25 type: phlare 26 url: ${PHLARE_URL} 27 jsonData: 28 httpHeaderName1: "X-Scope-OrgID" 29 secureJsonData: 30 httpHeaderValue1: "anonymous" 31 EOF 32 33 docker run $DOCKER_ARGS --rm \ 34 --name phlare-grafana \ 35 -v "${datasource_provisioning}:/etc/grafana/provisioning/datasources/phlare.yaml:ro" \ 36 -v "$(pwd)"/grafana/phlare-datasource/dist:/var/lib/grafana/plugins/phlare-datasource \ 37 -v "$(pwd)"/grafana/flamegraph/dist:/var/lib/grafana/plugins/flamegraph \ 38 -e GF_PLUGINS_PREINSTALL_SYNC=grafana-pyroscope-app \ 39 -e GF_PLUGINS_PREINSTALL_SYNC=pyroscope-datasource,pyroscope-panel \ 40 -e GF_DEFAULT_APP_MODE=development \ 41 -e GF_AUTH_ANONYMOUS_ENABLED=true \ 42 -e GF_AUTH_ANONYMOUS_ORG_ROLE=Admin \ 43 -t -i -p 3000:3000 grafana/grafana:main