Elasticsearch gui for your browser https://elasticvue.com
Elasticsearch is a trademark of Elasticsearch BV, registered in the U.S. and in other countries.
Contents
Elasticvue is a free and open-source gui for elasticsearch that you can use to manage the data in your cluster.
It has full support for elasticsearch versions 8.x
and 7.x
. Check
the FAQ for more details.
- Cluster overview
- Index & alias management
- Shard management
- Searching and editing documents
- Rest queries
- Snapshot & repository management
You can use elasticvue in several ways:
- Recommended: desktop app for linux, mac and windows
Other:
Please check the releases page for the latest desktop app download.
Start elasticvue by clicking on the icon in your toolbar.
You have to configure your elasticsearch cluster if you use elasticvue via docker
Use the existing image:
docker run -p 8080:8080 --name elasticvue -d cars10/elasticvue
When using docker you can provide some default cluster configuration for your users. 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"
}
]
The keys name
and uri
are required, username
and password
are optional. If you want to connect with an api key
simply use that as the password and omit the username.
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
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
Your users will be prompted to optionally import these clusters.
You have to configure your elasticsearch cluster if you use the web version of elasticvue
Visit https://app.elasticvue.com.
You have to configure your elasticsearch cluster if you use a self-hosted version of elasticvue
Please check the wiki for more information.
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.
Any current version of Chrome, Firefox and Edge (Chromium) should work without issues. Safari is mostly untested so your mileage may vary.
Before opening an issue please try to reset elasticvue to its default settings:
- Open the settings
- Download a backup of your current elasticvue data
- 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.
See the Wiki. Comparing to other frontends
Elasticvue is available in the following languages:
- english
- chinese (about 80% translated)
I do not speak chinese and therefore rely on your help to keep the chinese translation up-to-date. Please open a PR if you notice missing/wrong translations in the chinese version.
If you want to add a new language: translate src/locales/en.json
and open a PR.
See CONTRIBUTING.md.
MIT