因此,我有一个CentOS Docker镜像,其中包含Filebeat和其他一些我要使用Supervisor进行管理的服务。作为Supervisor配置的一部分,我想启动Filebeat服务。这是我在supervisor.conf中尝试的操作
[program:filebeat]
command=/etc/init.d/filebeat start
directory=/etc/init.d/
autostart=true
autorestart=true
上面的代码段给了我一个错误,指出“无法建立D-Bus连接:不允许操作”。
关于启动Filebeat的正确方法有何想法?
最佳答案
我建议在自己的container中运行Filebeat。但是,如果您要使用supervisor,那么您就不想守护进程。您将要使用与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
管理日志记录。关于docker - 使用Supervisor启动Filebeat,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42637471/