1## Running the Web UI in development mode against a production Nomad cluster
2
3:warning: **Running the Web UI in development mode is only necessary when debugging
4issues. Unless you are debugging an issue, please only use the Web UI contained
5in the Nomad binary.** :warning:
6
7The production Web UI concatenates and minifies JavaScript and CSS. This can make errors
8cryptic or useless. In development mode, files are as expected and stack traces are useful.
9
10Debugging Web UI issues with the Web UI in development mode is done in three steps:
11
12  1. Cloning the Nomad Repo
13  2. Setting up your environment (or using Vagrant)
14  3. Serving the Web UI locally while proxying to the production Nomad cluster
15
16### Cloning the Nomad Repo
17
18The Web UI is part of the same repo as Nomad itself. Clone the repo
19[using Github](https://help.github.com/articles/cloning-a-repository/).
20
21### Setting up your environment
22
23The [Web UI README](README.md) includes a list of software prerequisites and instructions
24for running the UI locally or with the Vagrant VM.
25
26### Serving the Web UI locally while proxying to the production Nomad cluster
27
28Serving the Web UI is done with a single command in the `/ui` directory.
29
30  - **Local:** `ember serve`
31  - **Vagrant:** `ember serve --watch polling --port 4201`
32
33However, this will use the [Mirage fixtures](http://www.ember-cli-mirage.com/) as a backend.
34To use your own Nomad cluster as a backend, use the proxy option.
35
36  - **Local:** `ember serve --proxy https://demo.nomadproject.io`
37  - **Vagrant:** `ember serve --watch polling --port 4201 --proxy https://demo.nomadproject.io`
38
39The Web UI will now be accessible from your host machine.
40
41  - **Local:** [http://localhost:4200](http://localhost:4200)
42  - **Vagrant:** [http://localhost:4201](http://localhost:4201)
43