Skip to content

Latest commit

 

History

History
 
 

zipkin-ui

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

zipkin-ui

This container doubles as a skeleton for creating proxy configuration around Zipkin like authentication, dealing with CORS with zipkin-js apps, or terminating SSL. It can also be adapted to test new UIs.

How this works

Zipkin's UI is bundled into a jar (zip) file under a relative path of '/zipkin'. This layers over an nginx image with the latest jar extracted into /var/www/html/zipkin.

The 'nginx.conf' in this image is a template, currently with one parameter ZIPKIN_BASE_URL corresponding to where api requests are forwarded to. A typical setup is ZIPKIN_BASE_URL=http://zipkin:9411. The two resources forwarded are the api (/zipkin/api) and the config (/zipkin/config.json).

Zipkin's UI only calls GET (not POST) operations in the v2 api. For example, if it calls for services names, it will end up invoking: GET ${ZIPKIN_BASE_URL}/zipkin/api/v2/services

Beyond hosting of assets and forwarding, this also sets redirects, cache-control headers, etc similar to what the normal zipkin-server would. This lets you use a more familiar nginx syntax for things such as how long a browser should cache the result of the service names query.