Quick start with Docker Desktop

Running Hypertrace with Docker Compose


Note: This video shows end-to-end installation of Hypertrace with Docker Compose on Docker Desktop for Mac, but will also work with Windows & many flavors of Unix.


Requirements:

space-1.jpg
Docker Desktop resource allocation

Start Hypertrace

Note: If reporting a problem, please include the output of docker stats --no-stream.

Use your terminal window to start Hypertrace with git and docker-compose up:

git clone https://github.com/hypertrace/hypertrace.git
cd hypertrace/docker
docker-compose -f docker-compose.yml pull
docker-compose -f docker-compose.yml up --force-recreate

This will start all services required for Hypertrace. Once you see 'Stack is up after [x] attempts', you can view the Hypertrace UI at http://localhost:2020. The UI isn't useful without data. To send data to Hypertrace, run an app, such as the sample app below.

space-1.jpg
Hypertrace Dashboard

Note: If reporting a problem, please include the output of docker stats --no-stream.

Start the Sample App

  • The sample app has two services: frontend and backend. They both report trace data to Hypertrace. To setup the sample app, you need to start the sample app with:

    docker-compose -f docker-compose-zipkin-example.yml up
    
  • You can view the sample app at http://localhost:8081. Refresh the sample app page multiple times to generate sample requests. Then go back to the Hypertrace UI and click the 'Refresh' button at the top. You should now see sample requests in the Explorer section.

  • Note: You can start Hypertrace AND the sample app together with:

    docker-compose -f docker-compose.yml -f docker-compose-zipkin-example.yml up
    

Troubleshooting

Issues? Answers to common installation problems can be found at Troubleshooting Docker Compose.

Stop Hypertrace

Use a terminal window to stop Hypertrace:

docker-compose -f docker-compose.yml down
// docker-compose -f docker-compose.yml -f docker-compose-zipkin-example.yml down

Ports

Here are the default Hypertrace ports:

PortService
2020Used by Hypertrace UI
8081Sample App
14267Jaeger thrift collector
14268Jaeger HTTP collector
9411Zipkin collector

Deploy in production with Kubernetes

We support helm charts to simplify deploying Hypertrace in Kubernetes environment, maybe on your on-premise server or cloud instance!

Please refer to the deployments section in our documentation which lists the steps to deploy Hypertrace on different Kubernetes flavors across different operating systems and cloud providers. You can find the Helm Charts and installation scripts with more details here.

Note: We have created hypertrace-ingester and hypertrace-service to simplify local deployment and quick-start with Hypertrace. As of now, we don't support them for production because of some limitations and some unreliabiliy with scaling. So, we will encourage you to deploy individual components for staging as well as production deployments.