Awesome
elasticvue
English / 简体中文
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
About
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.
Features
- Cluster overview
- Index & alias management
- Shard management
- Searching and editing documents
- Rest queries
- Snapshot & repository management
Usage
You can use elasticvue in several ways:
Desktop App - recommended
Browser extension
Docker
You have to configure your elasticsearch cluster if you want to 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.
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
Your users will be prompted to optionally import these clusters.
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 use elasticvue via docker
Please check the wiki for more information.
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 (Chromium) 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:
- 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.
Comparing with other frontends
See the Wiki. Comparing to other frontends
i18n
Elasticvue is available in the following languages:
- english
- chinese (about 80% translated)
Help wanted
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.
Adding a new language
If you want to add a new language: translate src/locales/en.json
and open a PR.
Contributing
See CONTRIBUTING.md.
License
MIT