docker集装箱内不能减lessulimits
我想在docker容器中使用ulimit -f
来减less限制。 (我强调这个问题的答案很多,这涉及到越来越多的限制)。
我有一个脚本,写一个10K文件,并报告成功:
$ perl examples/largefile.pl Begin End
我可以防止它运行到完成,如预期的那样,用ulimit -f
:
$ ( ulimit -f 5 ; perl examples/largefile.pl ) Begin
不幸的是,在一个cocker容器中, ulimit -f
命令似乎没有效果:
$ sudo docker run --rm -i -t -u 1001 -v $PWD:$PWD safe-docker bash user@08aba80ebaff:/$ cd ... user@08aba80ebaff:/...$ examples/largefile.pl Begin End user@08aba80ebaff:/...$ ( ulimit -f 5 ; perl examples/largefile.pl ) Begin End
但请注意ulimit
如何ulimit
它有效果:
user@08aba80ebaff:/...$ ( ulimit -f; ulimit -f 5; ulimit -f) unlimited 5
通过 – --privileged
到docker run
没有帮助。
这与我先前的问题有关 ,但是我在那里想知道从调用者inheritance到docker run
限制,而在这里我想知道在容器内设置限制。
看来这是最近在docker执行: https : //github.com/docker/docker/issues/4717