Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

etcdv3-browser

CI

A simple etcd (v3) web-based browser.

etcd browser

Main features:

  • Hierarchical display
  • Real-time updates - when something changes in ETCD, the web UI is automatically updated
  • Editing ETCD contents (if enabled)

Running

The application is designed to be run in Docker.

For example, the following starts etcd and etcdv3-browser in Docker:

docker network create my_net
docker run -d --name etcd -p 2379:2379 --net my_net quay.io/coreos/etcd:v3.6.7 /usr/local/bin/etcd --listen-client-urls http://0.0.0.0:2379 --advertise-client-urls=http://127.0.0.1:2379
docker run -d --name etcdv3-browser --net my_net -p 8081:8081 -e HTTP_PORT=8081 -e ETCD=etcd:2379 -e EDITABLE=1 rustyx/etcdv3-browser

Open http://localhost:8081

If port 8081 is occupied, change all instances of 8081 above to some other port.

Configuration

Environment variables:

variable description default
HTTP_PORT listen port 8081
ETCD etcd endpoint etcd:2379
CORS allowed origins http://localhost:*
EDITABLE set to 1 to enable edit functionality 0
PREFIX only browse keys under a given prefix ``
USERNAME optionally send a username to etcd <empty>
PASSWORD optionally send a password to etcd <empty>

Development environment

Initial setup: install Go and Node.js (latest version).

Check backend/go.mod for the minimum required Go version. Minimum required Node.js version is 22.

Backend

cd backend
go build
HTTP_PORT=8081 ETCD=localhost:2379 EDITABLE=1 ./etcdv3-browser

Frontend

cd frontend
npm run serve

Make sure .env.development contains the correct backend port (HTTP_PORT above).

Running unit tests

cd backend
go test ./...
cd frontend
npm run test:unit

Lints and code quality checks

Backend static analysis with staticcheck (installed as a Go tool dependency, no separate installation needed):

cd backend
go vet ./...
go tool staticcheck ./...

Frontend lint:

cd frontend
npm run lint

Building a Docker image

docker build . -t rustyx/etcdv3-browser

About

etcd v3 browser - web UI client for browsing (and optionally, editing) etcd3 contents

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages