LoginSignup
60
59

More than 3 years have passed since last update.

Elasticsearch + Kibana を docker-compose でさくっと動かす

Last updated at Posted at 2019-07-03

手元のログファイルをさくっと解析したくて docker-compose を使ってローカルで起動してみました。

kibana_ml.png
(Machine Learning のトップ画面。ここでログファイルをインポートして Visualize で可視化しました)

環境

MacOS Mojave 10.14.4
Docker 18.09.2

手順

  1. docker-compose.yaml を作成
  2. docker-compose up
  3. ブラウザでアクセス!

docker-compose.yaml

docker-compose.yaml
version: "3"

services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.2.0
    environment:
      - discovery.type=single-node
      - cluster.name=docker-cluster
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    ports:
      - 9200:9200
    volumes:
      - es-data:/usr/share/elasticsearch/data
  kibana:
    image: docker.elastic.co/kibana/kibana:7.2.0
    ports:
      - 5601:5601

volumes:
  es-data:

なお、ホストにデータを保存したい場合は services.elasticsearch.volumes を以下のように修正し、volumes は削除します。

# 省略
    volumes:
      - ./es-data:/usr/share/elasticsearch/data
# 以下は削除
#volumes:
#  es-data:

起動

docker-compose up

ブラウザでアクセス!

kibana.png

少し解説

  • discovery.type=single-node
    • ローカルで検証するだけなので Development mode にすることで簡易な設定にしました。 Production mode と比較してクラスタの構築など複雑な設定をしなくてすみます。
  • bootstrap.memory_lock=true
    • スワップを使わない設定。
  • "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    • メモリ固定。

参考

60
59
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
60
59