cars10/elasticvue

By cars10

Updated about 2 months ago

Elasticsearch frontend

Image
API management
Developer tools
Databases & storage
5

500K+

cars10/elasticvue repository overview

elasticvue

Donate Chrome web store Edge extension Firefox addon Docker build

Elasticsearch gui for your browser https://elasticvue.com

Elasticsearch is a trademark of Elasticsearch BV, registered in the U.S. and in other countries.

Demo

Contents

  1. About
  2. Usage
  3. Browser support
  4. Troubleshooting
  5. Comparing with other frontends
  6. i18n
  7. Contributing

About

Screenshots

Elasticvue is a free and open-source gui for elasticsearch that you can use to manage the data in your cluster. It supports every version of elasticsearch, even those that are EOL. Check the FAQ for more details.

Features
  • Cluster overview
  • Index & alias management
  • Shard management
  • Searching and editing documents
  • Rest queries
  • Snapshot & repository management
  • ... and much more

Usage

You can use elasticvue in several ways, use whatever works best for you.

TypeAuto UpdateCluster configSupport for self signed ssl
Desktop appYesnot neededyes
Browser extensionYesnot neededpartially
WebYesrequiredpartially
Self hostedNorequiredpartially
DockerNorequiredpartially
Browser extension
Web version

You have to configure your elasticsearch cluster if you want to use elasticvue via docker

Visit https://app.elasticvue.com.

Self-hosted

You have to configure your elasticsearch cluster if you want to self host elasticvue

Please check the wiki for more information.

Docker

You have to configure your elasticsearch cluster if you want to use elasticvue via docker

Use the existing image:

# docker hub:
docker run -p 8080:8080 --name elasticvue -d cars10/elasticvue

# ghcr.io:
docker run -p 8080:8080 --name elasticvue -d ghcr.io/cars10/elasticvue

When using docker you can provide some default cluster configuration for your users. Cluster will automatically be imported every time you start elasticvue. You can either set an environment variable or provide a config file as a volume. In either case the content should be a json array of your clusters, looking like this:

[
  {
    "name": "dev cluster",
    "uri": "http://localhost:9200"
  },
  {
    "name": "prod cluster",
    "uri": "http://localhost:9501",
    "username": "elastic",
    "password": "foobar"
  }
]
Possible keys
NameValueRequiredExample
nameName of the clusterNo"production"
uriCluster uriYes"http://localhost:9200"
usernameUsername for basic authenticationNo"elastic"
passwordPassword for basic authenticationNo"foobar"
apiKeyAPI key for authenticationNo"VuaCfGcBCdbkQm-e5aOx:ui2lp2axTNm5ShWDc11v6g"
S3accessKeyIdAWS access key ID for IAM authenticationNo"AKIAIOSFODNN7EXAMPLE"
S3secretAccessKeyAWS secret access key for IAM authenticationNo"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
S3sessionTokenAWS session token for temporary credentialsNo"FQoGZXIvYXdzE...example"
S3regionAWS region for IAM authenticationNo"us-east-1"
Docker with default clusters in environment variable

Example using environment variable ELASTICVUE_CLUSTERS:

docker run -p 8080:8080 -e ELASTICVUE_CLUSTERS='[{"name": "prod cluster", "uri": "http://localhost:9200", "username": "elastic", "password": "elastic"}]' cars10/elasticvue
Docker with default clusters in config file via volume

Example using config file volume to /usr/share/nginx/html/api/default_clusters.json:

echo '[{"name": "prod cluster", "uri": "http://localhost:9200", "username": "elastic", "password": "elastic"}]' > /config.json
docker run -p 8080:8080 -v /config.json:/usr/share/nginx/html/api/default_clusters.json cars10/elasticvue

Elasticsearch configuration

You have to enable CORS to allow connection to your elasticsearch cluster if you do not use the desktop app or the browser extensions.

Find your elasticsearch configuration (for example /etc/elasticsearch/elasticsearch.yml) and add the following lines:

# enable CORS
http.cors.enabled: true

# Then set the allowed origins based on how you run elasticvue. Chose only one:
# for docker / running locally
http.cors.allow-origin: "http://localhost:8080"
# online version
http.cors.allow-origin: /https?:\/\/app.elasticvue.com/

# and if your cluster uses authorization you also have to add:
http.cors.allow-headers: X-Requested-With,Content-Type,Content-Length,Authorization

If you use docker to run your elasticsearch cluster you can pass the options via environment variables:

docker run -p 9200:9200 \
           -e "http.cors.enabled=true" \
           -e "http.cors.allow-origin=/.*/" \
           elasticsearch

After configuration restart your cluster and you should be able to connect.

Browser Support

Any current version of Chrome, Firefox and Edge should work without issues. Safari is mostly untested so your mileage may vary.

Troubleshooting

Before opening an issue please try to reset elasticvue to its default settings:

  1. Open the settings
  2. Download a backup of your current elasticvue data
  3. Click Disconnect and reset

This will reset all your saved filters, and you have to reconnect to your cluster. Please open an issue if your problem persists.

Comparing with other frontends

See the Wiki. Comparing to other frontends

i18n

Elasticvue is available in the following languages:

  • english
  • chinese
  • french
  • russian
  • japanese
  • italian

Contributing

See CONTRIBUTING.md.

License

MIT

Tag summary

Content type

Image

Digest

sha256:efddf4fa0

Size

25.6 MB

Last updated

about 2 months ago

docker pull cars10/elasticvue:1.15.0