大量のデータを扱うことができ、時系列グラフや散布図等で可視化ができるElastic関連。
この記事では、ElasticsearchとKibanaをdocker-composeを使用してコンテナ化する手順を簡潔に解説していく。
とりあえずコンテナ化して操作をしたいという方は是非参考にしていただきたい。
簡単に紹介をしておくと、
『Elasticsearch』とは、あらゆるデータを格納・操作することができる無料の検索・分析エンジン。
『Kibana』とは、Elasticsearchに格納したデータを参照して、ダッシュボード上にグラフを配置することで可視化することができる。
docker-composeの定義
docker-compose.yml
の詳細は以下。
version: "3"
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.0
environment:
- discovery.type=single-node
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- xpack.security.enabled=false
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- "TZ=Asia/Tokyo"
ports:
- 9200:9200
volumes:
# 必要に応じてマウントするpathを指定する
- ~/hoge/elasticsearch/data:/usr/share/elasticsearch/data
kibana:
image: docker.elastic.co/kibana/kibana:7.17.0
ports:
- 5601:5601
environment:
- ELASTICSEARCH_URL=http://elasticsearch:9200
- "TZ=Asia/Tokyo"
- I18N_LOCALE="ja-JP"
depends_on:
- elasticsearch
elasticsearchとkibanaをそれぞれ定義する必要がある。
公式からimage
が提供されているため、必要なバージョンを指定しよう。
ports
はそれぞれデフォルトのポート番号を指定し、最低限必要な環境変数をenvironment
に設定する。
コンテナ起動
先程作成したdocker-compose.yml
を使用してコンテナを起動する。
dockerの使用環境が整っていない場合はDocker Desktopのインストールをオススメしているので、以下も合わせてご覧いただきたい。
-
【M2・Apple Chip対応】macOSのDocker Desktopのインストール方法
開発には欠かせないDockerは、多数のコンテナを管理してサービスを実行することができる。 仮想マシンと比較して、導入コストが低く、軽量で動作が軽いため支持されている。 そこで、本記事では『Docke ...
続きを見る
以下のコマンドを実行する。
docker-compose up -d
初回はイメージをpullする必要があるので、起動時に多少の時間がかかる場合があります。
処理が完了すると最後に以下のような出力がある。
Creating docker_elasticsearch_1 ... done
Creating docker_kibana_1 ... done
以下のコマンドで正常に起動されているかを確認する。
docker-compose ps
ステータスが「Up」になっていることと指定したポート番号で起動されているかを確認できる。
% docker-compose ps
Name Command State Ports
--------------------------------------------------------------------------------------------------
docker_elasticsearch_1 /bin/tini -- /usr/local/bi ... Up 0.0.0.0:9200->9200/tcp, 9300/tcp
docker_kibana_1 /bin/tini -- /usr/local/bi ... Up 0.0.0.0:5601->5601/tcp
動作確認
起動したKibanaのコンテナにアクセスし、問題なく画面が表示されることを確認しよう。
Google Cromeなどのブラウザから http://localhost:5601
にアクセスをする。
すると、以下のようなKibanaの画面が表示されるはずだ。
[独りで閲覧] ボタンを押下すると、以下のようなトップ画面が表示される。
エラーになる場合
コンテンが起動しない、アクセスができないなどのエラーがある場合は各コンテナのログを確認してみよう。
以下のコマンドでログを表示することができる。
docker-compose logs elasticsearch
docker-compose logs kibana
大量にログが出力されて見づらい場合は、以下のようにgrep
を使用して絞り込むことをオススメする。
docker-compose logs elasticsearch | grep error
まとめ
以上、無料で使用できるソフトウェアのElasticsearchとKibanaをコンテナ化する手順を解説した。
docker-compose.yml
で定義をしてコンテナを操作するのは非常に便利なので、是非活用してみてほしい。
他にもDockerやデータベースなどについても記事を公開しているので、合わせてご覧いただきたい。
-
【M2】Azure SQL Edge(SQL Server)のdockerコンテナ起動方法!
Microsoftが提供しているSQL ServerをmacOSの環境で使用する方法を解説する。 M1/M2が搭載されている場合、 『Microsoft SQL Server』をコンテナ化して正常に起 ...
続きを見る
最後まで目を通していただき、ありがとうございました。