配置文件
version: '2'
services:
# ES
es:
image: elasticsearch:8.6.2
container_name: es
restart: always
ports:
- 9210:9200 #java、集群通信端口
- 9310:9300 #http通信端口
privileged: true #使用privileged設置為true是賦予這個容器root權限
volumes:
- ./es/data:/usr/share/elasticsearch/data
- ./es/logs:/usr/share/elasticsearch/logs
- ./es/plugins:/usr/share/elasticsearch/plugins # ik分詞器
environment:
#設置集群名稱為elasticsearch
- node.name="es"
- cluster.name="es"
- ES_JAVA_OPTS=-Xms512m -Xmx512m
#以單一節點模式啟動
- discovery.type="single-node"
# 關閉xpack認證
- xpack.security.enabled= false
# 與客戶端http鏈接是否加密,先選擇不加密
#- xpack.security.http.ssl= false
# - xpack.security.enrollment.enabled=false
# 跨域
# - http.cors.enabled= true
# - http.cors.allow-origin="*"
kibana:
image: kibana:8.6.2
container_name: kibana
restart: always
privileged: true #使用privileged設置為true是賦予這個容器root權限
ports:
- 5611:5601
environment:
# - xpack.security.enabled=false
- xpack.management.enabled= false
- elasticsearch_hosts= ["http://es:9200"]
# kibana中文界面
# - i18n.locale = "zh-CN"
# 設置訪問elasticsearch的地址
# - elasticsearch.hosts="http://es:9210"
# - elasticsearch.username="kibana_system"
# - elasticsearch.password="123"
volumes:
- ./kibana/data:/usr/share/kibana/data
- ./kibana/logs:/usr/share/kibana/logs
# depends_on:
# - es
# links:
#可以用es這個域名訪問elasticsearch服務
# - es:es
logstash:
image: docker.elastic.co/logstash/logstash:8.6.2
container_name: logstash
restart: always
privileged: true #使用privileged設置為true是賦予這個容器root權限
environment:
- xpack.management.enabled= false
- xpack.monitoring.elasticsearch.hosts= "http://es:9200"
# - xpack.monitoring.elasticsearch.username= "logstash_system"
# - xpack.monitoring.elasticsearch.password= "123"
ports:
- 4560:4560
kibana
1、瀏覽器訪問 http://localhost:5611/
2、選擇手動配置輸入 http://es:9200(必須使用服務名稱和服務端口,ip地址,localhost都不行)
image.png
3、獲取驗證碼,進入kibana容器,執行./bin/kibana-verification-code
4、完成配置