docker 部署logstash
时间: 2023-10-28 20:06:46 浏览: 90
要在 Docker 中部署 Logstash,可以按照以下步骤进行操作:
1. 下载 Logstash 镜像:
```
docker pull docker.elastic.co/logstash/logstash:7.13.2
```
2. 创建一个配置文件(例如 `logstash.conf`),并将其挂载到容器中:
```
input {
tcp {
port => 5000
codec => json
}
}
output {
elasticsearch {
hosts => ["http://elasticsearch:9200"]
index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
}
}
```
这个配置文件指定了一个 TCP 输入,监听端口号为 5000,并使用 JSON 编解码器。输出到 Elasticsearch,使用在容器中运行的 Elasticsearch 实例。
3. 运行容器:
```
docker run -d --name=logstash --net=host -v /path/to/logstash.conf:/usr/share/logstash/pipeline/logstash.conf docker.elastic.co/logstash/logstash:7.13.2
```
这个命令将会创建一个名为 `logstash` 的容器,并将配置文件挂载到容器中。`--net=host` 参数将允许容器使用主机网络,以便接收来自本地网络的日志数据。如果您的 Elasticsearch 实例在容器内运行,请将 `hosts` 参数更改为 `http://localhost:9200`。
这样就完成了 Logstash 的 Docker 部署。
阅读全文