Docker:在主机上的一个priveleged容器中运行一个任意的命令
我试图从一个专门的docker运行一个命令。 特别是命令nmcli
。
当我尝试添加nmcli
作为一个卷,它抱怨说,它缺less其他文件。
当我添加整个/usr/bin
它抱怨python无法添加站点包。
有没有办法,我可以从一个子容器在主机上运行一个命令
与yum
或apt
等软件包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理共享库。