docker-compose安裝elk實踐
更新時間:2026年01月15日 09:44:46 作者:hello_zzw
文章內(nèi)容涉及多個配置文件的設(shè)置,包括docker-compose.yml、elasticsearch.yml、kibana.yml和logstash.conf等,用于配置Elasticsearch、Kibana和Logstash的參數(shù)和設(shè)置
docker-compose安裝elk
docker-compose.yml
version: '3.8'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:8.14.0
container_name: elasticsearch
environment:
- node.name=elasticsearch
- cluster.name=es-docker-cluster
- discovery.type=single-node
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- xpack.security.enabled=false
- xpack.security.enrollment.enabled=false
- xpack.security.http.ssl.enabled=false
- xpack.security.transport.ssl.enabled=false
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- ./elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
- ./data/elasticsearch:/usr/share/elasticsearch/data
- ./elasticsearch/plugins:/usr/share/elasticsearch/plugins
ports:
- "9200:9200"
- "9300:9300"
networks:
- elk
restart: unless-stopped
logstash:
image: docker.elastic.co/logstash/logstash:8.14.0
container_name: logstash
volumes:
- ./logstash/config/logstash.conf:/usr/share/logstash/pipeline/logstash.conf
- ./logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml
ports:
- "5044:5044"
- "15000:5000/tcp"
- "15000:5000/udp"
- "9600:9600"
environment:
- LS_JAVA_OPTS=-Xms256m -Xmx256m
networks:
- elk
depends_on:
- elasticsearch
restart: unless-stopped
kibana:
image: docker.elastic.co/kibana/kibana:8.14.0
container_name: kibana
ports:
- "5601:5601"
environment:
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
- NODE_OPTIONS=--openssl-legacy-provider
- SERVER_NAME=kibana
- SERVER_HOST=0.0.0.0
- ELASTICSEARCH_USERNAME= # 留空以禁用安全
- ELASTICSEARCH_PASSWORD= # 留空以禁用安全
- XPACK_SECURITY_ENABLED=false
- XPACK_ENCRYPTEDSAVEDOBJECTS_ENCRYPTIONKEY=fhjskloppd678ehkdfdlliverpoolfcr
- I18N_LOCALE=zh-CN
- XPACK_FLEET_ENABLED=false
- XPACK_SPACES_ENABLED=false
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
- NODE_OPTIONS=--openssl-legacy-provider
networks:
- elk
depends_on:
- elasticsearch
restart: unless-stopped
networks:
elk:
driver: bridge
elasticsearch/config/elasticsearch.yml
cluster.name: "es-docker-cluster" network.host: 0.0.0.0 # 單節(jié)點配置 discovery.type: single-node # 關(guān)閉安全特性(開發(fā)環(huán)境) xpack.security.enabled: false xpack.security.enrollment.enabled: false # 禁用 HTTPS xpack.security.http.ssl.enabled: false xpack.security.transport.ssl.enabled: false # 允許跨域 http.cors.enabled: true http.cors.allow-origin: "*" http.cors.allow-headers: Authorization
elasticsearch/plugins
wget https://release.infinilabs.com/analysis-ik/stable/elasticsearch-analysis-ik-8.14.0.zip unzip elasticsearch-analysis-ik-8.14.0.zip -d analysis-ik rm elasticsearch-analysis-ik-8.14.0.zip
kibana/config/kibana.yml
server.name: kibana server.host: "0.0.0.0" elasticsearch.hosts: ["http://elasticsearch:9200"] monitoring.ui.container.elasticsearch.enabled: true i18n.locale: "zh-CN" xpack.security.enabled: false xpack.encryptedSavedObjects.encryptionKey: 'fhjskloppd678ehkdfdlliverpoolfcr' # 添加缺失的 xpack.security 相關(guān)配置 xpack.security.encryptionKey: 'fhjskloppd678ehkdfdlliverpoolfcr'
logstash/config/logstash.conf
input {
tcp {
port => 5000
codec => json
}
beats {
port => 5044
}
}
output {
elasticsearch {
hosts => ["elasticsearch:9200"]
index => "logstash-%{+YYYY.MM.dd}"
}
stdout {
codec => rubydebug
}
}
logstash/config/logstash.yml
http.host: "0.0.0.0" path.config: /usr/share/logstash/pipeline
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Docker容器網(wǎng)絡(luò)地址的創(chuàng)建修改
Docker提供了一個方便的方式來配置容器的網(wǎng)絡(luò)地址,在本文中,我們將介紹如何修改Docker容器的網(wǎng)絡(luò)地址,本文主要介紹了Docker容器網(wǎng)絡(luò)地址的創(chuàng)建修改,感興趣的可以了解一下2024-01-01
docker可視化管理工具portainer忘記密碼重置教程的實現(xiàn)
本文主要介紹了docker可視化管理工具portainer忘記密碼重置教程的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-08-08
docker環(huán)境調(diào)用mysqldump進行數(shù)據(jù)備份方式
這篇文章主要介紹了docker環(huán)境調(diào)用mysqldump進行數(shù)據(jù)備份方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-06-06
解決Ubuntu中Docker安裝時“無法找到軟件包”錯誤的解決方案
在Ubuntu中安裝Docker時遇到“無法找到軟件包”錯誤,通常是由于軟件源未正確配置或更新、軟件包名稱錯誤或已更改等原因造成的,解決方法包括添加Docker官方軟件源、更新軟件包列表、重新安裝Docker等2026-01-01

