我在主机中使用rsyslogd时,已收到消息,但是当rsyslogd移至容器时,则看不到任何消息。 我的rsyslogd dockerfile看起来
FROM centos:7
ARG RSYSLOG_VERSION=8.1907.0-2.el7
RUN yum -y install wget \
&& cd /etc/yum.repos.d/ \
&& wget http://rpms.adiscon.com/v8-stable/rsyslog.repo
RUN yum -y install rsyslog-${RSYSLOG_VERSION}
COPY *.sh /
EXPOSE 514
EXPOSE 9000
ENTRYPOINT ["/entrypoint.sh"]
我的entrypoint.sh文件如下所示:
#!/bin/bash -e
flow_config_file="/etc/rsyslog.d/flow.conf"
cat >> "${flow_config_file}" << EOM
*.* @10.84.10.10:9000
EOM
pidfile="/var/run/rsyslogd.pid"
rm -f "${pidfile}"
exec rsyslogd -n -f /etc/rsyslog.conf -i "${pidfile}"
rsyslog.conf中的相同配置*.* @10.84.10.10:9000
在主机9000端口上的主机tcpdump
中起作用,我可以看到收到的消息。
我认为我需要处理容器之间的通信通道。您能在这方面帮助我吗?
关于, -M-