This container image is to create endpoint to collect logs on your host.
docker run -d -p 24224:24224 -v /data:/fluentd/log fluent/fluentd
Default configurations are to:
- listen port
24224
for fluentd forward protocol - store logs with tag
docker.**
into/fluentd/log/docker.*.log
(and symlinkdocker.log
) - store all other logs into
/fluentd/log/data.*.log
(and symlink data.log)
This image uses Alpine Linux. Since v0.12.26, we separate tags into vX.XX.XX
and vX.XX.XX-onbuild
.
This is deprecated. You can use ubuntu-base
tag for your build but we don't maintain ubuntu based image with latest fluentd release.
We recommend to fork ubuntu/Dockerfile
for your case.
Environment variable below are configurable to control how to execute fluentd process:
It's for configuration file name, specified for -c
.
If you want to use your own configuration file (without any optional plugins), you can use it over this ENV variable and -v option.
- write configuration file with filename
yours.conf
- execute
docker run
with-v /path/to/dir:/fluentd/etc
to share/path/to/dir/yours.conf
in container, and-e FLUENTD_CONF=yours.conf
to read it
Use this variable to specify other options, like -v
or -q
.
It is very easy to use onbuild image as base image. Write your Dockerfile
and configuration files, and/or your own plugin files if needed.
FROM fluent/fluentd:latest-onbuild
MAINTAINER your_name <...>
USER fluent
WORKDIR /home/fluent
ENV PATH /home/fluent/.gem/ruby/2.3.0/bin:$PATH
RUN gem install fluent-plugin-secure-forward
EXPOSE 24284
CMD fluentd -c /fluentd/etc/$FLUENTD_CONF -p /fluentd/plugins $FLUENTD_OPT
Files below are automatically included in build process:
fluent.conf
: used instead of default fileplugins/*
: copied into/fluentd/plugins
and loaded at runtime
Note: Default image removed several apk packages, build-base and ruby-dev, to keep docker image small. If you want to install the plugin which depends on native extension gems, needs to re-install these packages to build it.
Note: If you want to use latest, non onbuild, image, copy fluent.conf and plugins manually.
docker run --log-driver=fluentd --log-opt fluentd-address=192.168.0.1:24224 IMAGE echo "Hello Fluentd"
Should produce a log-file with Hello Fluentd
, depending on you fluent.conf
file.