Elasticvueを使ってみる

前回でlaradockに付属しているelasticsearchを起動するところまでおこなてみました。
が、やっぱりGUIで色々管理できたほうが便利ということで、elasticsearchのGUI管理ツールを探したところ
「elasticvue」というツールが見つかったので使ってみることにしました。

Docker版を使ってみる

公式ページにいろいろなタイプ(ブラウザエクステンション、Docker、バイナリなど)が提供されているので、お好きなものをどうぞ
https://elasticvue.com/

自分はDocker版を利用することにしました。

起動からアクセスまで

公式ページにDockerの起動コマンドが書いてあるので使用します
(自分の環境では8080ポートが使用されていたため、8880ポートで起動しています)

docker run -p 8880:8080 \
           -d cars10/elasticvue

コンテナ起動後は「http://localhost:8880」で管理画面にアクセスできます

CORSの設定が必要

elasticvueのページにアクセスすると「最初にCORSの設定が必要」という注意書きが出てきますので、設定します。
設定先はlaradockのelasticsearchになります。elasticsearchもDockerで起動しているので、コンテナに入って作業します。

% docker-compose exec elasticsearch bash
-- ここからコンテナ内での操作 --
[root@1f4250529341 config]# pwd
/usr/share/elasticsearch/config
[root@1f4250529341 config]# vi elasticsearch.yml
  以下2行を追加
  http.cors.enabled: true
  http.cors.allow-origin: "http://localhost:8880"

ファイル保存後、コンテナから抜けてdocker-composeからコンテナの再起動をかけました

% docker-compose restart

再度 elasticvueの管理画面にアクセスし、TEST CONNECTIONをクリックします。
接続に成功すれば右下に「SUCCESS」を表示されます。
次に「CONNECT」ボタンを押してelasticsearchに接続します

elasticvueでできること

elasticsearchに接続できると、ノードやクラスターのヘルスやインデックス一覧が確認できます。
REST APIへアクセスするためのエディタも準備されており、簡単なドキュメントの管理もできそう

ただ、GUIを使用してインデックスの追加や、マッピングの定義は行えないようで、それらの設定は自分でJSONを作ってREST API経由でリクエストを行う必要があるみたい・・・

以上

elasticvueの紹介でした。サクッとelasticseearchの状態を確認するには良さそうですが、本格的に管理/運用を行うなら、もう少し機能が充実したツールを探す必要がありそうですね。
自分の場合、あくまで個人開発なので、とりあえずelasticvueを使ってドキュメント作成や管理を進めていこうと思います