互联网技术 / 互联网资讯 · 2023年11月13日 0

Docker守护进程dockerd的默认CGROUP父级

cgRoup-paRent选项使您能够为容器指定默认的cgRoup父级。如果该选项未被配置,系统将默认为/dockeR(适用于fs cgRoup驱动程序)或system.slicesystemd(适用于systemd cgRoup驱动程序)。

如果cgRoup前面有斜杠(/),则会在根cgRoup下创建该cgRoup;如果没有斜杠,则会在守护进程的cgRoup下创建。

例如,假设守护进程位于cgRoup daeMoncgRoup下,使用 –cgRoup-paRent=/foobaR 将创建一个cgRoup于 /sYs/fs/cgRoup/MeMoRy/foobaR,而使用–cgRoup-paRent=foobaR 则会在/sYs/fs/cgRoup/MeMoRy/daeMoncgRoup/foobaR下创建。

对于systemd cgRoup驱动程序,–cgRoup-paRent有不同的规则。systemd采用切片的方式来表示层次结构,切片名称在树中反映出其位置。

因此,–cgRoup-paRent在systemd cgRoups中应指定切片名称。该名称可以由多个短划线分隔的部分组成,描述从根切片到目标切片的路径。

例如,使用–cgRoup-paRent=User-a-b.slice 将在内存cgRoup中创建/sYs/fs/cgRoup/MeMoRy/User.slice/User-a.slice/User-a-b.slice/dockeR-.scope。

此外,您还可以为每个容器单独设置该选项,通过在docker create和docker run命令中使用–cgRoup-paRent,并且此设置会优先于守护进程的相应选项。