微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

lxc和主机之间的D-BUS通信

如何解决lxc和主机之间的D-BUS通信

我最近在两个不同的 Linux 用户之间建立了通信客户端 - 服务器应用程序。 为此,我使用了 system d-bus。 在目录“/etc/dbus-1/system.d”中,我为系统d-bus制作了配置文件并将其放入该目录中。 在配置文件中,我在一个 d-bus 接口上设置了自己的两个用户。 之后,两个linux用户间的通信就正常了。

我的下一步是在主机(我的主要用户)和 lxc 容器(基于 ubuntu)之间完成通信客户端-服务器应用程序。 在这种情况下,存在的是一个用于主机的文件 system_bus_socket 和存在用于 lxc 机器的第二个文件 system_bus_socket。 我的问题是: 如何从 lxc 容器连接 system_bus_socket(主机)? 我试图将 dir 从主机 /var/run/dbus 挂载到 lxc /var/run/dbus,但没有成功。

希望你能理解我。

解决方法

您可以创建一个 LXD 代理设备来链接主机上的 Unix 套接字和容器中的 Unix 套接字。

命令行如下所示:

lxc config device add mycontainer mysocket proxy connect=unix:/var/on/the/host listen=unix:/var/in/the/container bind=container

文档:https://github.com/lxc/lxd/blob/master/doc/instances.md#type-proxy

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。