🗒️

Docker composeでElasticsearchとKibanaを稼働させる

2024/04/30に公開

前提条件

  • WSL(ディストリビューションはUbuntu)上にDockerとDocker composeがインストールされている状態です
  • Elasticのバージョンは8.13.2です

ゴール

Docker composeでElasticsearchとKibanaのコンテナを稼働させて、KibanaのUIにログインするまで

コンテナ起動時に阻害要因となるコンテナを削除

阻害要因となるコンテナがある状態

docker ps -a
CONTAINER ID   IMAGE                                                  COMMAND                  CREATED          STATUS                    PORTS                                                 NAMES
41dbe36911e1   docker.elastic.co/logstash/logstash:8.13.2             "/usr/local/bin/dock…"   53 minutes ago   Up 53 minutes             5044/tcp, 9600/tcp                                    nostalgic_joliot
cb5a2b583e59   docker.elastic.co/kibana/kibana:8.13.2                 "/bin/tini -- /usr/l…"   22 hours ago     Up 22 hours               0.0.0.0:5601->5601/tcp, :::5601->5601/tcp             kib01
121cb192b9b9   docker.elastic.co/elasticsearch/elasticsearch:8.13.2   "/bin/tini -- /usr/l…"   24 hours ago     Up 24 hours               9200/tcp, 9300/tcp                                    es02
86e1e9162f3f   docker.elastic.co/elasticsearch/elasticsearch:8.13.2   "/bin/tini -- /usr/l…"   45 hours ago     Up 45 hours               0.0.0.0:9200->9200/tcp, :::9200->9200/tcp, 9300/tcp   es01

削除する

$ docker stop kib01 es01 es02 nostalgic_joliot
kib01
es01
es02
nostalgic_joliot
$ docker rm kib01 es01 es02
kib01
es01
es02
$ docker network ls
NETWORK ID     NAME      DRIVER    SCOPE
b03567b9f81c   bridge    bridge    local
ac1c2b8d1575   elastic   bridge    local
7b6d889a176c   host      host      local
353321a4517d   none      null      local
$ docker network rm elastic
elastic

阻害要因となるコンテナがない状態

$ docker ps -a
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
$ docker network ls
NETWORK ID     NAME      DRIVER    SCOPE
b03567b9f81c   bridge    bridge    local
7b6d889a176c   host      host      local
353321a4517d   none      null      local
$ docker volume ls
DRIVER    VOLUME NAME

公式のドキュメント

https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html

稼働準備

フォルダを作成

$ mkdir /mnt/c/elastic
$ cd /mnt/c/elastic

環境変数ファイルを作成

ダウンロードする場合はこちら

$ cat .env
ELASTIC_PASSWORD=eUb19GTAN+06cWT4Qz02
KIBANA_PASSWORD=eUb19GTAN+06cWT4Qz02
STACK_VERSION=8.13.2
CLUSTER_NAME=docker-cluster
LICENSE=basic
ES_PORT=9200
KIBANA_PORT=5601
MEM_LIMIT=1073741824
# COMPOSE_PROJECT_NAME=myproject

docker-compose.ymlを作成

ダウンロードする場合はこちら

/mnt/c/elastic$ ls docker-compose.yml
docker-compose.yml

コンテナ稼働

$ docker compose up -d

実行結果

$ docker compose up -d
WARN[0000] /mnt/c/elastic/docker-compose.yml: `version` is obsolete
[+] Running 11/11
 ✔ Network elastic_default      Created                                                                            0.2s
 ✔ Volume "elastic_kibanadata"  Created                                                                            0.0s
 ✔ Volume "elastic_esdata01"    Created                                                                            0.0s
 ✔ Volume "elastic_esdata02"    Created                                                                            0.0s
 ✔ Volume "elastic_esdata03"    Created                                                                            0.0s
 ✔ Volume "elastic_certs"       Created                                                                            0.0s
 ✔ Container elastic-setup-1    Healthy                                                                            0.0s
 ✔ Container elastic-es01-1     Healthy                                                                            0.0s
 ✔ Container elastic-es02-1     Healthy                                                                            0.0s
 ✔ Container elastic-es03-1     Healthy                                                                            0.0s
 ✔ Container elastic-kibana-1   Started                                                                            0.0s
$ docker ps -a
CONTAINER ID   IMAGE                                                  COMMAND                  CREATED              STATUS                          PORTS                                                 NAMES
8a3a447e9808   docker.elastic.co/kibana/kibana:8.13.2                 "/bin/tini -- /usr/l…"   About a minute ago   Up About a minute (healthy)     0.0.0.0:5601->5601/tcp, :::5601->5601/tcp             elastic-kibana-1
2932b97c2c65   docker.elastic.co/elasticsearch/elasticsearch:8.13.2   "/bin/tini -- /usr/l…"   About a minute ago   Up About a minute (healthy)     9200/tcp, 9300/tcp                                    elastic-es03-1
c1d7b20aa0a4   docker.elastic.co/elasticsearch/elasticsearch:8.13.2   "/bin/tini -- /usr/l…"   About a minute ago   Up About a minute (healthy)     9200/tcp, 9300/tcp                                    elastic-es02-1
e8c905c3e5cf   docker.elastic.co/elasticsearch/elasticsearch:8.13.2   "/bin/tini -- /usr/l…"   About a minute ago   Up About a minute (healthy)     0.0.0.0:9200->9200/tcp, :::9200->9200/tcp, 9300/tcp   elastic-es01-1
de09534f2451   docker.elastic.co/elasticsearch/elasticsearch:8.13.2   "/bin/tini -- /usr/l…"   About a minute ago   Exited (0) About a minute ago

Kibanaにログイン

http://localhost:5601/にアクセスすると、下のログイン画面が表示されます

.envファイルに設定したパスワードを使用してログインします

無事ログインできました

以上で作業完了です

Discussion