linkerd / linkerd/linkerd2

linkerd2 web does not support relative paths

Open
#1,960 11 comments 10 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area/usability area/web good first issue help wanted priority/P2
Dominant language
Go
Stars
11.5k
Forks
1.4k
Avg merge
3d 22h
Merged PRs (30d)
53

Description

## Bug Report

I want to be able to proxy the web UI in a subdirectory or kubectl proxy, but it currently requires to be at the root path. That is a bug.

![image](https://user-images.githubusercontent.com/80104/49626403-bc5f0a80-f9a7-11e8-861c-2b60447656eb.png)

### What is the issue?

### How can it be reproduced?

### Logs, error output, etc

(If the output is long, please create a [gist](https://gist.github.com/) and
paste the link here.)

#### `linkerd check` output

```text
kubernetes-api: can initialize the client..................................[ok]
kubernetes-api: can query the Kubernetes API...............................[ok]
kubernetes-api: is running the minimum Kubernetes API version..............[ok]
linkerd-api: control plane namespace exists................................[ok]
linkerd-api: control plane pods are ready..................................[ok]
linkerd-api: can initialize the client.....................................[ok]
linkerd-api: can query the control plane API...............................[ok]
linkerd-api[kubernetes]: control plane can talk to Kubernetes..............[ok]
linkerd-api[prometheus]: control plane can talk to Prometheus..............[ok]
linkerd-api: no invalid service profiles...................................[ok]
linkerd-version: can determine the latest version..........................[ok]
linkerd-version: cli is up-to-date.........................................[ok]
linkerd-version: control plane is up-to-date...............................[ok]

Status check results are [ok]
```

### Environment

- Kubernetes Version:
- Cluster Environment: (GKE, AKS, kops, ...)
- Host OS:
- Linkerd version:
Client version: stable-2.1.0
Server version: stable-2.1.0

### Possible solution

Use a relative path of `dist` instead of `/dist` and so on.

### Additional context

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the linkerd2 web UI entry point and inspect how its dist paths are rooted when served through a subdirectory or kubectl proxy. Confirm the fix by loading the UI from a non-root path and verifying its assets and navigation work without requiring the root path.

Written by the indexing model from the issue text.

Assessment

Tech stack
kubernetes
Domain
frontend, web-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.