nmcli in a docker container

一曲冷凌霜 提交于 2020-07-08 19:57:20

问题


i currently looking for running nmcli in a docker container

nmcli work great on my host but if i'm starting a privileged container nmcli does not work.

to start my container

sudo docker run --privileged --net host -it image_with_network-manager /bin/bash

and then running nmcli

nmcli dev wifi  => Error: Could not create NMClient object: Could not connect: No such file or directory

ifconfig inside my container is ok , i have eth0 and wlan0 of the host


回答1:


I run my container like this:

docker run -d -it --privileged=true --net host --volume /var/run/dbus:/var/run/dbus [other args here] on Ubuntu18.04 and it works.

Note: --volume /var/run/dbus:/var/run/dbus but not --volume /var/run/dbus, and the above volume sharing flag is used to share the outer system's bus. If you need the container to have its own bus, you will need to configure differently.




回答2:


The thing about networkmanager is that it runs on dbus. I did the same thing (stracing and seeing what was needed)

Try mounting /var/run/dbus as a volume.

sudo docker run --privileged --net host -it --volume /var/run/dbus image_with_network-manager /bin/bash




回答3:


try in docker, this create own dbus in docker

docker run -it --net=host image_name
        
dbus-uuidgen > /var/lib/dbus/machine-id
mkdir -p /var/run/dbus
dbus-daemon --config-file=/usr/share/dbus-1/system.conf --print-address


来源:https://stackoverflow.com/questions/52654962/nmcli-in-a-docker-container

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!