-1

我正在尝试运行一个需要限制在一个目录中并在 Web 应用程序的 shell 函数中执行的命令。

我的目标是运行该程序,但将其限制在一个目录中。每次我想运行程序时,这个目录都会改变,并且多个实例需要能够同时在不同的目录上运行。

我看过 chroot ,似乎每次都需要显式创建一个文件系统。我正在寻找一个更临时的解决方案,它接受所需的根目录并且不需要我在整个地方复制文件或做奇怪的东西安装。

4

1 回答 1

-1

您最可能想要的是容器

一个容器需要几毫秒的时间才能启动,并且每次运行时都会创建一个基本上是完整的 chroot 监狱。类似的命令docker run --rm --volume /var/chroot/jail/whatever:/workdir ubuntu stat /workdirstat在 chroot jail 目录上运行,所有环境都是最新的 Ubuntu 版本。然后它将废弃 chroot 监狱。再次运行它将创建一个全新的监狱。

您需要在所需的任何监狱(Ubuntu、CentOS 等)之上将您的 Web 应用程序构建为 docker 映像,这意味着调整您的构建系统以创建这样的映像。

于 2019-11-10T06:31:50.833 回答