Ubuntu 在主机上存储的LXC容器中运行程序

Ubuntu 在主机上存储的LXC容器中运行程序,ubuntu,lxc,Ubuntu,Lxc,我正在编写一个将在LXC容器中运行的二进制文件。我控制二进制文件的源代码,但不控制它将在其中运行的容器的内容。特别是,我不想通过将二进制文件写入容器来污染容器 是否有任何方法可以运行存储在主机上的二进制文件,但要在容器的执行上下文名称空间、chroot、丢弃的功能等中运行?我认为您可以将samba服务从主机导出到容器。您只需将您的内容放在samba的共享文件夹中,并且不要污染容器。我认为您可以将samba服务从主机导出到容器。你只要把你的东西放在samba的共享文件夹里,不要污染容器。我认为这是

我正在编写一个将在LXC容器中运行的二进制文件。我控制二进制文件的源代码,但不控制它将在其中运行的容器的内容。特别是,我不想通过将二进制文件写入容器来污染容器


是否有任何方法可以运行存储在主机上的二进制文件,但要在容器的执行上下文名称空间、chroot、丢弃的功能等中运行?

我认为您可以将samba服务从主机导出到容器。您只需将您的内容放在samba的共享文件夹中,并且不要污染容器。

我认为您可以将samba服务从主机导出到容器。你只要把你的东西放在samba的共享文件夹里,不要污染容器。

我认为这是不可能的。不过,您可以使用bind mount在容器和主机之间装载一个共享文件夹。然后,可以使用chroot启动二进制文件,该文件现在是容器FS的一部分,例如:


sudo chroot/bin/bash-c'cd;/'

我认为这是不可能的。不过,您可以使用bind mount在容器和主机之间装载一个共享文件夹。然后,可以使用chroot启动二进制文件,该文件现在是容器FS的一部分,例如:


sudo chroot/bin/bash-c'cd;/'

您可以将程序设置为某些名称空间,但不是所有名称空间,chroot,然后删除功能

您还可以通过访问容器的chroot,而不是实际chroot来实现类似的功能


您可以使用适当的选项在容器中运行[staticly linked]dived,例如,-client chroot-root to current,监听在容器和主机上都可见的文件系统部分上的UNIX套接字;然后运行dive命令该dived启动容器名称空间中的非静态链接程序。根文件系统将与主机保持相同,以便您的程序可以找到库,而容器的根文件系统将设置为当前目录。

您可以将程序设置为某些名称空间,但不是所有名称空间,chroot,然后删除功能

您还可以通过访问容器的chroot,而不是实际chroot来实现类似的功能


您可以使用适当的选项在容器中运行[staticly linked]dived,例如,-client chroot-root to current,监听在容器和主机上都可见的文件系统部分上的UNIX套接字;然后运行dive命令该dived启动容器名称空间中的非静态链接程序。根文件系统将与主机保持相同,以便您的程序可以找到库,并且容器的根文件系统将设置为当前目录。

您可以在主机上安装并应用程序升级,然后使用中所述的lxc容器


性能或磁盘空间成本几乎为零

您可以在主机上安装并应用程序升级,然后使用中所述的lxc容器


性能或磁盘空间方面的成本几乎为零

这需要安装Samba、启动它、创建装载点并装载共享,所有这些都需要从容器内部进行。这是一个相当大的污染。这需要安装Samba,启动它,创建一个挂载点,并挂载共享,所有这些都需要从容器内部进行。那是相当大的污染。