#拉取docker镜像
docker pull docker.elastic.co/logstash/logstash:7.1.0
(2)创建配置文件logstash.conf
(1) mkdir /usr/local/logstash/config
(2) cd /usr/local/logstash/config
(3) vim logstash.conf
logstash.conf:
input {
#监听输入,如logback输入
tcp {
#监听端口是4569,logback配置时也是4569
port => 4569
}
}
output {
#输出到es
elasticsearch {
#es ip
hosts => "ip:9200"
#索引名字
index => "log-%{+YYYY.MM.dd}"
#索引type 默认logs
document_type => "log-test"
}
#输出到控制台
stdout {
codec => rubydebug
}
}
(3)启动
--net=host
告诉 Docker 不要将容器网络放到隔离的名字空间中,即不要容器化容器内的网络,不配置无法接收到请求
docker run -d -v /usr/local/logstash/config/:/usr/share/logstash/pipeline/ --net host --name logstash 镜像id