docker-compose安装elasticsearch集群与kibana

单独启动kibana (docker方式)

1
2
3
4
# 拉取镜像,可以自行更换版本 需要与 docker run 命令中的版本一直
docker pull docker.elastic.co/kibana/kibana:7.16.0
# -v 配置文件映射 /home/docker/es/kibana.yml代表宿主机的文件路径, /usr/share/kibana/config/kibana.yml 此路径不需要修改,否则配置路径错误,配置文件无法生效
docker run --name kibana -d -p 0.0.0.0:5601:5601 -v /home/docker/es/kibana.yml:/usr/share/kibana/config/kibana.yml docker.elastic.co/kibana/kibana:7.16.0

单独启动kibana (docker-compose方式)

配置 docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
version: '2.2'
services:
kibana:
container_name: kb
# 镜像版本, 可以自行更换版本
image: docker.elastic.co/kibana/kibana:7.9.3
environment:
# 此处配置elasticsearch的host列表,
# 如果是同一个docker启动的另一个容器,建议在此处配置, es01 为另一个容器名
# 如果是有外网或者局域网的ip:port配置,则建议配置在 kibana.yml 内容
ELASTICSEARCH_HOSTS: '["http://es01:9200"]'
volumes:
# 映射宿主机配置文件到kibana具体容器, /home/docker/es/kibana.yml代表宿主机的文件路径, /usr/share/kibana/config/kibana.yml 此路径不需要修改,否则配置路径错误,配置文件无法生效
- /home/docker/es/kibana.yml:/usr/share/kibana/config/kibana.yml
ports:
- '5601:5601' #java、集群通信端口
privileged: true #环境变量


同时启动 elasticsearch与kibana(docker方式)

1
2
3
4
5
6
# 创建桥接网络,方便之后使用
docker network create elastic
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.16.0
docker run --name es --net elastic -d -p 0.0.0.0:9200:9200 -p 0.0.0.0:9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.16.0
docker pull docker.elastic.co/kibana/kibana:7.16.0
docker run --name kibana --net elastic -d -p 0.0.0.0:5601:5601 -e "ELASTICSEARCH_HOSTS=http://es:9200" docker.elastic.co/kibana/kibana:7.16.0

kibana.yml文件内容

1
2
3
4
5
6
7
8
9
10
11
12
server.name: kibana
# server.publicBaseUrl: "http://172.1.1.14:5601"
# kibana的主机地址 0.0.0.0可表示监听所有IP
server.host: "0.0.0.0"
# kibana访问es的URL 如果es设置密码,则需要使用 username 、password配置
#elasticsearch.hosts: [ "http://172.1.1.14:9200" ]
# elasticsearch.username: 'kibana'
# elasticsearch.password: 'kibana'
# 显示登陆页面
#xpack.monitoring.ui.container.elasticsearch.enabled: true
# 语言-此处展示为 中文
i18n.locale: "zh-CN"