可以在pod中使用'systemctl'吗?

时间:2018-10-12 10:59:26

标签: kubernetes centos7 dbus systemctl

我使用dockerfile制作了一个映像。然后根据我创建的图像创建了广告连播。 但是发生了错误。当我将外壳放置到pod并使用'systemctl'时,出现了D-bus错误。我该如何解决这个问题?

Failed to get D-Bus connection: Operation not permitted

1 个答案:

答案 0 :(得分:2)

您基本上不能在Docker中使用systemctl,因为容器不会运行systemd守护程序。在Docker本身中运行这是很棘手的,并且可能使之成为现实的两种变通办法很难在Kubernetes中表达。

您应该想出其他方法来运行您的流程。通常,一个容器将只运行一个服务,因此,无需通过systemd单元文件启动它,您可以直接运行该服务。您的Dockerfile可能以类似

的结尾
CMD ["/usr/sbin/myserviced", "--foreground"]