2014-04-21 20:01:53 +00:00
|
|
|
## Consul Web UI
|
|
|
|
|
|
|
|
This directory contains the Consul Web UI. Consul contains a built-in
|
|
|
|
HTTP server that serves this directoy, but any common HTTP server
|
|
|
|
is capable of serving it.
|
|
|
|
|
2014-05-01 03:08:10 +00:00
|
|
|
It uses JavaScript and [Ember](http://emberjs.com) to communicate with
|
|
|
|
the [Consul API](http://www.consul.io/docs/agent/http.html). The basic
|
2014-04-21 20:01:53 +00:00
|
|
|
features it provides are:
|
|
|
|
|
|
|
|
- Service view. A list of your registered services, their
|
|
|
|
health and the nodes they run on.
|
|
|
|
- Node view. A list of your registered nodes, the services running
|
|
|
|
on each and the health of the node.
|
|
|
|
- Key/value view and update
|
|
|
|
|
|
|
|
It's aware of multiple data centers, so you can get a quick global
|
|
|
|
overview before drilling into specific data-centers for detailed
|
|
|
|
views.
|
|
|
|
|
2014-05-01 03:08:10 +00:00
|
|
|
The UI uses some internal undocumented HTTP APIs to optimize
|
|
|
|
performance and usability.
|
|
|
|
|
2014-04-21 20:01:53 +00:00
|
|
|
### Development
|
|
|
|
|
|
|
|
Improvements and bug fixes are welcome and encouraged for the Web UI.
|
|
|
|
|
|
|
|
The UI is built with SASS CSS, so you'll need to compile that through
|
|
|
|
the associated makefile, as well as installing the `sass` gem.
|
|
|
|
|
|
|
|
gem install sass
|
|
|
|
|
|
|
|
One-time stylesheet compilation:
|
|
|
|
|
|
|
|
make build
|
|
|
|
|
|
|
|
Reloading compilation for development:
|
|
|
|
|
|
|
|
make watch
|
|
|
|
|
2014-05-01 03:08:10 +00:00
|
|
|
Consul ships with an HTTP server for the API and UI. By default, when
|
|
|
|
you run the agent, it is off. However, if you pass a `-ui-dir` flag
|
|
|
|
with a path to this directoy, you'll be able to access the UI via the
|
|
|
|
Consul HTTP server address, which defaults to `localhost:8500/ui`.
|
2014-05-01 03:08:54 +00:00
|
|
|
|
|
|
|
An example of this command, from inside the `ui/` directory, would be:
|
|
|
|
|
|
|
|
consul agent -bootstrap -server -data-dir /tmp/ -ui-dir .
|
|
|
|
|