码头集装箱内的debootstrap

这是我的问题:我想在Docker容器内部建立一个chroot环境。 问题是debootstrap无法运行,因为它无法在chroot中安装proc:

W: Failure trying to run: chroot /var/chroot mount -t proc proc /proc

(在日志中问题原来是: mount: permission denied

如果我run --privileged容器,它(当然)的作品...我真的很喜欢debootstrap在Dockerfile中的chroot(更清洁)。 有什么方法可以让它起作用吗?

非常感谢!


不,这目前不可能。

问题#1916(涉及在docker build期间运行特权操作)仍然是一个悬而未决的问题。 在讨论中增加了一个命令行标志和RUNP命令,但这两个都没有实现。


你可以使用debootstrap的fakechroot变体,如下所示:

fakechroot fakeroot debootstrap --variant=fakechroot ...

干杯!


简短的回答,没有特权模式没有没有办法。

Docker面向微型服务,并不代替虚拟机。 在一个容器中进行多次安装绝对不符合这个要求。 为什么不使用多个码头集装箱?

链接地址: http://www.djcxy.com/p/82077.html

上一篇: debootstrap inside a docker container

下一篇: How to return Wrapper obj of TableOjb1 and TableObj2 using linq