所以我有一个包含Filebeat的CentOS Docker镜像以及我正在尝试使用Supervisor管理的一些其他服务。作为Supervisor配置的一部分,我想启动Filebeat服务。这是我在supervisord.conf中尝试的内容
[program:filebeat]
command=/etc/init.d/filebeat start
directory=/etc/init.d/
autostart=true
autorestart=true
上面的代码段给出了一个错误,指出“无法获得D-Bus连接:操作不被允许”。
有关启动Filebeat的正确方法的想法吗?
答案 0 :(得分:1)
我建议在自己的container中运行Filebeat。但是,如果您打算使用supervisord,那么您不希望对该过程进行守护。您将需要使用与Filebeat用于systemd的命令类似的命令。
command=/usr/share/filebeat/bin/filebeat -e
-c /etc/filebeat/filebeat.yml
-path.home /usr/share/filebeat
-path.config /etc/filebeat
-path.data /var/lib/filebeat
-path.logs /var/log/filebeat
-e
告诉进程将其日志写入stderr,以便您可以使用supervisorctl
管理日志记录。