Rafael Brito f75601fd53 feat: 2323 adding version and commit on opencost-ui logs (#2388) 2 лет назад
..
src 5949b21860 fix drilldown, encode filters, padding to detail modal, remove filters on Breakdown change 2 лет назад
.babelrc 0aa63fb1f2 A few housekeeping updates for the opencost UI: 3 лет назад
.dockerignore 3734cd3618 Update opencost ui doc 3 лет назад
.nvmrc 0aa63fb1f2 A few housekeeping updates for the opencost UI: 3 лет назад
Dockerfile f75601fd53 feat: 2323 adding version and commit on opencost-ui logs (#2388) 2 лет назад
Dockerfile.cross f75601fd53 feat: 2323 adding version and commit on opencost-ui logs (#2388) 2 лет назад
README.md 7c046a3ebb Updated dependencies and instructions for building 2 лет назад
default.nginx.conf.template 195f779b74 Enable setting the API_SERVER for use with Docker 2 лет назад
docker-entrypoint.sh f75601fd53 feat: 2323 adding version and commit on opencost-ui logs (#2388) 2 лет назад
justfile f75601fd53 feat: 2323 adding version and commit on opencost-ui logs (#2388) 2 лет назад
nginx.conf a07a4f451c Allow ui to run from non privileged 3 лет назад
package-lock.json ab5d9e8e3f Bump axios from 1.5.1 to 1.6.0 in /ui 2 лет назад
package.json ab5d9e8e3f Bump axios from 1.5.1 to 1.6.0 in /ui 2 лет назад

README.md

OpenCost UI

Installing

See https://www.opencost.io/docs/install for the full instructions.

helm install my-prometheus --repo https://prometheus-community.github.io/helm-charts prometheus \
  --namespace prometheus --create-namespace \
  --set pushgateway.enabled=false \
  --set alertmanager.enabled=false \
  -f https://raw.githubusercontent.com/opencost/opencost/develop/kubernetes/prometheus/extraScrapeConfigs.yaml

kubectl apply --namespace opencost -f https://raw.githubusercontent.com/opencost/opencost/develop/kubernetes/opencost.yaml

Using

After following the installation instructions, access the UI by port forwarding:

kubectl port-forward --namespace opencost service/opencost 9090

Running Locally

The UI can be run locally using the npm run serve command.

$ npm install
...
$ npm run serve
> opencost-ui@0.1.0 serve
> npx parcel serve src/index.html

Server running at http://localhost:1234
✨ Built in 1.96s

And can have a custom URL backend prefix.

BASE_URL=http://localhost:9090/test npm run serve

> opencost-ui@0.1.0 serve
> npx parcel serve src/index.html

Server running at http://localhost:1234
✨ Built in 772ms

In addition, similar behavior can be replicated with the docker container:

$ docker run -e BASE_URL_OVERRIDE=test -p 9091:9090 -d opencost-ui:latest
$ curl localhost:9091
<html gibberish>

Overriding the Base API URL

For some use cases such as the case of OpenCost deployed behind an ingress controller, it is useful to override the BASE_URL variable responsible for requests sent from the UI to the API. This means that instead of sending requests to <domain>/model/allocation/compute/etc, requests can be sent to <domain>/{BASE_URL_OVERRIDE}/allocation/compute/etc. To do this, supply the environment variable BASE_URL_OVERRIDE to the docker image.

$ docker run -p 9091:9090 -e BASE_URL_OVERRIDE=anything -d opencost-ui:latest