docker安装fluentd
- 安装docker
 
在安装fluentd之前,需要先安装docker。可以参考官方文档进行安装:https://docs.docker.com/engine/install/
- 创建fluentd配置文件
 
在本地创建一个文件夹,用于存放fluentd的配置文件。在该文件夹下创建一个名为fluent.conf的文件,内容如下:
<source>
  @type forward
  port 24224
  bind 0.0.0.0
</source>
<match **>
  @type stdout
</match>
该配置文件定义了一个输入源和一个输出目标。输入源使用forward插件监听24224端口,输出目标使用stdout插件将日志输出到控制台。
- 创建Dockerfile
 
在同一文件夹下创建一个名为Dockerfile的文件,内容如下:
FROM fluent/fluentd:v1.12-debian-1
USER root
RUN ["gem", "install", "fluent-plugin-record-reformer", "--no-document"]
USER fluent
该Dockerfile使用官方提供的fluentd镜像,并在其中安装了一个名为fluent-plugin-record-reformer的插件,该插件可以对日志进行格式化处理。
- 构建docker镜像
 
在终端中进入该文件夹,并执行以下命令构建docker镜像:
docker build -t my-fluentd .
该命令将会根据Dockerfile文件构建一个名为my-fluentd的docker镜像。
- 运行docker容器
 
执行以下命令运行docker容器:
docker run -p 24224:24224 -v /path/to/fluentd/config:/fluentd/etc -it my-fluentd
该命令将会启动一个名为my-fluentd的docker容器,并将容器内的24224端口映射到本地的24224端口。同时,将本地的fluentd配置文件夹挂载到容器内的/fluentd/etc目录下。
- 测试
 
在容器内部执行以下命令测试是否能够接收日志:
echo '{"message":"hello world"}' | fluent-cat test
该命令将会向容器内的fluentd发送一条日志,日志内容为{"message":"hello world"}。如果一切正常,该日志将会被输出到控制台。
- 完成
 
至此,fluentd已经成功安装并运行在docker容器中。可以根据实际需要修改fluentd配置文件,将日志输出到指定的目标
原文地址: https://www.cveoy.top/t/topic/dshh 著作权归作者所有。请勿转载和采集!