docker-compose 部署 ELK7.4.2
时间: 2023-06-12 11:07:09 浏览: 198
好的,以下是使用 Docker Compose 部署 ELK7.4.2 的步骤:
1. 首先,创建一个名为 `docker-compose.yml` 的文件,并在其中添加以下内容:
```
version: '3.2'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.4.2
container_name: elasticsearch
environment:
- node.name=elasticsearch
- discovery.type=single-node
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
ports:
- 9200:9200
volumes:
- esdata:/usr/share/elasticsearch/data
networks:
- elk
logstash:
image: docker.elastic.co/logstash/logstash:7.4.2
container_name: logstash
volumes:
- ./logstash.conf:/usr/share/logstash/pipeline/logstash.conf
ports:
- 5000:5000
- 9600:9600
networks:
- elk
kibana:
image: docker.elastic.co/kibana/kibana:7.4.2
container_name: kibana
ports:
- 5601:5601
networks:
- elk
volumes:
esdata:
networks:
elk:
```
这里我们使用了三个服务:Elasticsearch、Logstash 和 Kibana。其中 Elasticsearch 用于存储和索引日志数据,Logstash 用于处理日志数据,Kibana 用于可视化和查询日志数据。
2. 创建一个名为 `logstash.conf` 的文件,并在其中添加以下内容:
```
input {
tcp {
port => 5000
codec => json
}
}
output {
elasticsearch {
hosts => ["elasticsearch:9200"]
index => "logs-%{+YYYY.MM.dd}"
}
}
```
这里我们使用了 TCP 输入插件来监听 5000 端口的日志数据,并将其发送到 Elasticsearch 中。
3. 运行以下命令启动 ELK:
```
docker-compose up -d
```
4. 等待一段时间后,访问 `http://localhost:5601` 即可进入 Kibana 的管理界面。
至此,你已经成功部署了 ELK7.4.2。注意,这只是一个简单的示例,实际上你可能需要根据自己的需求进行更加详细的配置。
阅读全文