Docker:在主机上的一个priveleged容器中运行一个任意的命令

我试图从一个专门的docker运行一个命令。 特别是命令nmcli

当我尝试添加nmcli作为一个卷,它抱怨说,它缺less其他文件。

当我添加整个/usr/bin它抱怨python无法添加站点包。

有没有办法,我可以从一个子容器在主机上运行一个命令

yumapt等软件包pipe理器一起安装的大多数工具将使用共享库来减less安装的整体大小。

容器可能需要是相同的发行版,并且安装了相同的程序包依赖关系,或者将二进制程序的所有依赖关系挂载到容器中。

像这样的东西应该工作:

 docker run \ -v /lib:/lib \ -v /usr/lib/:/usr/lib \ -v /usr/bin/nmcli:/usr/bin/nmcli \ busybox \ /usr/bin/nmcli 

但是,如果您希望容器也使用它自己的共享库,则可能需要更加具体地讨论库挂载。

一些软件包可以提供一个“静态二进制文件”,包括其可执行文件中的所有依赖项。 我怀疑nmcli是否存在,因为它是RHEL特定的工具来pipe理RHEL盒子,其策略是使用yum来pipe理共享库。