Dockerを使ってKibana on Elasticsearchの環境を秒で構築する
こんにちわ
がじぇったー (@hackmylife7) | Twitter
です。
仕事でelasticsearch+kibanaの環境をサクッとローカルで作る必要があったのでそのメモです。
構築手順
海外のページにdocker-compose.ymlが載っていたので基本そのままです。
Dockerはあらかじめインストールしてください。
mkdir -p /tmp/kibana-es cd /tmp/kibana-es vi docker-compose.yml
以下内容の貼り付け
version: '3' services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:6.3.2 environment: - cluster.name=docker-cluster - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" ulimits: memlock: soft: -1 hard: -1 ports: - "9200:9200" kibana: image: docker.elastic.co/kibana/kibana:6.3.2 ports: - "5601:5601"
起動します
docker-compose up -d
localhostでesとkibanaのページが見れるはずです。
Elasticsearch is available at http://localhost:8100/
Kibana UI is up at http://localhost:5601/
kibanaからelasticsearchへのデータ登録
kibanaのサイドメニューの「Dev Tools」からElasticSearchへのデータの登録が可能です。
データの登録
データの登録はPostです
POST /test_data/_doc {"hoge": "テストだよ"}
登録したデータの確認
GET /test_*
レスポンス
{ "took": 3, "timed_out": false, "_shards": { "total": 5, "successful": 5, "skipped": 0, "failed": 0 }, "hits": { "total": 2, "max_score": 1, "hits": [ { "_index": "test_data", "_type": "_doc", "_id": "ow8sSHABJZqys3wWPnNH", "_score": 1, "_source": { "hoge": "テストだよ" } }, { "_index": "test_data", "_type": "_doc", "_id": "pA8sSHABJZqys3wWRHMK", "_score": 1, "_source": { "hoge": "テストだよ" } } ] } }
Queryでのデータの確認
GET /test_data/_search {"query": {"match": {"hoge": "テストだよ"}}}
表示件数を指定して確認
GET /test_data/_search?size=30
IDを指定してドキュメントを削除
DELETE /test_data/_doc/ow8sSHABJZqys3wWPnNH
レスポンス
{ "_index": "test_data", "_type": "_doc", "_id": "ow8sSHABJZqys3wWPnNH", "_version": 2, "result": "deleted", "_shards": { "total": 2, "successful": 1, "failed": 0 }, "_seq_no": 1, "_primary_term": 1 } [asin:4295003913:detail]